regulärer Ausdruck für Telefonnummer
Die bessere Lesbarkeit ist zwar auch begrüßenswert, entscheidender ist aus meiner Sicht aber, dass es sich eben um eine Bibliothek handelt, die exakt für dieses Problem entwickelt wurde, im günstigsten Fall alle Randfälle berücksichtigt, mit Tests abgesichert ist usw. Gerade solche zunächst trivial erscheinenden Dinge sind oft dann doch gar nicht so einfach zu implementieren (ein anderes prominentes Beispiel sind hier E-Mail-Adressen, die alles ausschöpfen, was im Standard so erlaubt ist). Daher würde ich so eine Bibliothek einem selbst geschriebenen oder gefundenen RegEx stets vorziehen.
Ein anderes Beispiel sind Range-Probleme wie z.B. Körpergröße. Diese eigenen sich RegEx auch nicht.
Auf den ersten Blick sieht "Körpergröße" wie ein triviales RegEx-Problem aus. Ist es aber nicht.
Es ist zwar lösbar mit RegEx aber der Ausdruck ist leider nicht mehr gut lesbar.
RegEx sind aber z.B. dann praktisch, wenn man beispielsweise mittels Texteditor bei Textdateien mit Datumswerten nur die Jahreszahl "hochziehen" (2021 --> 2022) möchte. Sprich wenn man (weitestgehend) ausschließen will, dass irgendwelche anderen Zeichenfolgen, die zufällig einen Jahreswert enthalten, ersetzt werden.
Einschränkend muss ich allerdings ergänzen, dass noch die Wahlfreiheit der (technischen) Mittel relevant sein kann. In dem Bereich in dem ich RegEx einsetze, kann es zu erheblichen Regressforderungen kommen, wenn etwas schärfer oder laxer als ein _vorgegebener_ RegEx geprüft wird.
LG
Auf den ersten Blick sieht "Körpergröße" wie ein triviales RegEx-Problem aus. Ist es aber nicht.
Es ist zwar lösbar mit RegEx aber der Ausdruck ist leider nicht mehr gut lesbar.
RegEx sind aber z.B. dann praktisch, wenn man beispielsweise mittels Texteditor bei Textdateien mit Datumswerten nur die Jahreszahl "hochziehen" (2021 --> 2022) möchte. Sprich wenn man (weitestgehend) ausschließen will, dass irgendwelche anderen Zeichenfolgen, die zufällig einen Jahreswert enthalten, ersetzt werden.
Einschränkend muss ich allerdings ergänzen, dass noch die Wahlfreiheit der (technischen) Mittel relevant sein kann. In dem Bereich in dem ich RegEx einsetze, kann es zu erheblichen Regressforderungen kommen, wenn etwas schärfer oder laxer als ein _vorgegebener_ RegEx geprüft wird.
LG
RegEx kann man schon verwenden. Das tun solche Bibliothek intern oft auch selbst (wenn vielleicht auch weniger monolithische RegEx, die alles auf einmal erschlagen). Nur ist die Chance höher, dass bei so einer Bibliothek, die genau dafür gedacht ist (und die in der Urfassung auf etwas beruht, was von Google für Android entwickelt wurde und da eingesetzt) die entsprechenden Standards, reale Beispiele, Randfälle usw. berücksichtigt und im günstigsten Fall auch mit automatisierten Tests überprüft wurden. Das ist bei reinen RegEx, die man sich selbst kurzerhand ausdenkt oft nicht der Fall und bei solchen, die man im Netz findet, i. d. R. unklar. Falls man die Möglichkeit hat, sollte man, finde ich, so etwas einsetzen. Dass es im Einzelfall mal Ausnahmen, wie die von dir beschriebenen, geben kann, ist denke ich klar.