Florian: RegExp optimieren

Beitrag lesen

Hallo,

ich habe hier einen Regulären Ausdruck, der - ausnahmsweise mal - gut funktioniert, aber recht lang und/oder umständlich zu sein scheint.

reg = /[\w|\ä|\ö|\ü|\ß|-|.|/|\å|\è|\é|\ê]*\b[\w|\ä|\ö|\ü|\ß|-|.|/|\å|\è|\é|\ê]+\b[\w|\ä|\ö|\ü|\ß|-|.|/|\å|\è|\é|\ê]*/gi;

Der RegExp sucht in einem Textfeld (String) nach einem oder mehreren Begriffen, die den folgenden Suchmustern entsprechen:

---------------------------------------------------------------------------------------------------------------------------

Baum, Motor, Rad etc. // normale Begriffe

Äpfel, Zäune, Menü, Maß etc. // Umlauten am Anfang des Begriffs, im Begriff und am Ende des Begriffs

Århus, Pière, Sempé etc. // Sonderzeichen am Anfang des Begriffs, im Begriff und am Ende des Begriffs

1912, 20000 etc. // Zahlen und Ziffern

Datensatz1, Daten1satz3, 20und3 etc. // Unmittelbare Abfolge von Buchstaben und Ziffern

Dateiname.pdf, Haus_17.rtf, Zahn-Krone.rtf etc. // Dateinamen in den üblichen Schreibweise, Begriffe, die bestimmte Satzzeichen enthalten

---------------------------------------------------------------------------------------------------------------------------

Es soll jeweils immer der ganze Begriff mit dem Suchmuster übereinstimmten; Beispiel

ausschließlich "Baum" wird gefunden, nicht "Baumsterben" oder "Obstbaum" etc.

---------------------------------------------------------------------------------------------------------------------------

Wie gesagt: der RegExp, den ich gebastelt habe, erfüllt seine Aufgabe, ist aber weder übersichtlich noch leicht zu pflegen, erst recht nicht, wenn weitere Satz- und Sonderzeichen hinzukommen sollten.

Findet jemand eine elegantere Form für die genannten Anforderung ?

Für Hinweise dankbar - es grüßt Florian