ich würde sowieso PCRE Ausdrücke bevorzugen:
Code: Alles auswählen
// Für str.
$adresse = preg_replace("/str\.([0-9]{1,3})([A-H]{0,1})/i", "str. $1$2", $adresse);
// Für strasse/straße
$adresse = preg_replace("/strasse([0-9]{1,3})([A-H]{0,1})/i", "strasse $1$2", $adresse);
$adresse = preg_replace("/straße([0-9]{1,3})([A-H]{0,1})/i", "straße $1$2", $adresse);
Man beachte: der
. muss maskiert werden mit
\
Ich habs auch gleich so abgeändert, dass mindestens 1 Ziffer aber höchstens 3 Ziffern nach dem Punkt folgen und danach optional max. 1 Buchstabe von A-H (Groß-, Kleinschreibung wird nicht beachtet durch das i nach dem / )