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