Vinzenz Mai: regexp replace

Beitrag lesen

Hallo Nina,

wie kann man "(030) " in "030-" umwandeln?

am einfachsten mit str_replace().

Laut dem von mir verlinkten Handbuchabschnitt solltest Du _nicht_ zu einem regulären Ausdruck greifen.

habe einige tel nummern, wobei manche im stil von "0321/", manche "0123 / "... sind

auch hier bietet sich str_replace() an.

und es sollen am schluss alle im format
01234-... sein, also vorwahl minus ...
würde mich freuen, wenn ihr eine lösung dafür hättet, den preg_Replace mit einem regexp wie ^(.*?)^ ersetzt die gesamte vorwahl, anstatt sie ohne klammern, aber dafür mit - zurückzugeben...

Warum reguläre Ausdrücke? Soweit ich Deinen Bedarf verstehe, reicht es völlig aus:

( und Leerzeichen durch einen leeren String, ) und / durch ein Minuszeichen zu ersetzen. Für Faulenzer reichte es somit, im Sucharray zuerst ) und / in beliebiger Reihenfolge, gefolgt von ( und Leerzeichen in beliebiger Reihenfolge anzugeben, im Array mit den Ersatzzeichenketten zwei gleiche Einträge mit jeweils einem Minuszeichen. Willst Du fleißiger sein, so ergänze im replace-Array noch zweimal einen Leerstring (der Vorgabewert).

Freundliche Grüße

Vinzenz