Nessaja: Anfängerfrage (regexp)

Beitrag lesen

Hallo ihr :)
Ich beschäftige mich gerade mit regular expressions in php und möchte nun aus einem String die Hausnummer auslesen.

Der String kann z.B. lauten:

  • "Josefstraße 123"
  • "Hansstr.345"
  • "Josef Müller Schmid Str. 17a"
  • "Franz-Josef-Strauß-Str. 25 C"
  • "Birkenstraße12 (bei Frisör Müllermeierschulz)"

Jetzt habe ich es mit folgendem Ausdruck probiert:

$muh = preg_match_all ( "/[0-9]{1,5}\ {,1}[a-zA-z]{,1}/", "Beethovenstr. 25a (Frisör Meier)", $Treffer);

vorher natürlich brav $Treffer = array();

Um also den Ausdruck zu erklären - so wie ich mir den ausgedacht habe - : eine Zahl mit 0-5 Stellen, dann evtl. 1 Leerzeichen und dann evtl. 1 Buchstabe a-zA-Z

Wenn ich mir jetzt $Treffer anzeigen lasse, enthält es nur:

Array ( [0] => Array ( ) )

Ich möchte aber die Hausnummer ausgegeben bekommen, bzw. Sie in das Array $Treffer geschrieben bekommen (in diesem Fall "25a"), inklusive a/b/c etc. bei der Hausnummer, und egal ob vorher ein Punkt oder ein Leerzeichen oder direkt der Straßenname ist...

Kann mir da evtl. jemand weiterhelfen :) ?

Danke und Gruß

Nessaja.