Slash escapen?

Slash escapen?

am 03.10.2006 09:21:11 von MartinMuecke

Hallo,

ich habe eine Funktion,
die testest Straßennamen auf Korrektheit.
Bisher hat alles wunderbar funktioniert,
aber nun möchte ich auch die Möglichkeit einbauen,
dass jemand eine Straße eingeben kann,
wo die Hausnummer aus einem Bruch besteht.
Die Nummer selbst ist in meinem Ausdruck nicht enthalten,
nur der Bruch selber, also z.B. 1 / 2 oder / 2 (dann besteht die
Hausnummer nur aus einem Bruch, also z.B. Waldweg 1/2)
Irgendwie mag er aber den Slash nicht.
Ich bekomme folgende Meldung:

Warning: preg_match(): Unknown modifier '\'


Hier mein Teilausdruck:
$strassenNrBruch= "(\s?([1-9]\s?)?/\s?[1-9])?";

if (! preg_match("/^$strassenNrBruch$/",$wert) )

Muss man den Slash escapen, wenn ja, wie?
Konnte in Google nur was zu Backslash finden...

Re: Slash escapen?

am 03.10.2006 10:37:45 von Helmut Chang

Martin Mücke schrieb:

> Ich bekomme folgende Meldung:
>
> Warning: preg_match(): Unknown modifier '\'
>
>
> Hier mein Teilausdruck:
> $strassenNrBruch= "(\s?([1-9]\s?)?/\s?[1-9])?";
>
> if (! preg_match("/^$strassenNrBruch$/",$wert) )
^ ^

Du verwendest / als Patternbegrenzer. Dein Pattern eingesetzt ergibt:

if (!preg_match("/^(\s?([1-9]\s?)?/\s?[1-9])?$/",$wert))
^ ^
Anfang Ende

Alles was nach dem ersten Slash kommt, ist Pattern. Alles was nach dem
zweiten Slash kommt, sind Modifier. Und \ ist halt kein gültiger Modifier.

> Muss man den Slash escapen,...

In diesem Fall ja. Oder man verwendet einen anderen Begrenzer, der nicht
im Pattern selbst vorkommt:

preg_match("#^(\s?([1-9]\s?)?/\s?[1-9])?$#", $wert)

gruss, heli

Re: Slash escapen?

am 03.10.2006 11:55:10 von MartinMuecke

Ich hab zwar keine Ahnung warum,

aber es funktioniert.
Perfekt.

Danke!
;-)

Re: Slash escapen?

am 03.10.2006 12:42:18 von Gregor Kofler

Martin Mücke meinte:
> Ich hab zwar keine Ahnung warum,

??? Was ist an Helis ausführlicher Erläuterung unverständlich?

> aber es funktioniert.

No na.

Gregor


--
http://www.gregorkofler.at ::: Landschafts- und Reisefotografie
http://www.licht-blick.at ::: Forum für Multivisionsvorträge
http://www.image2d.com ::: Bildagentur für den alpinen Raum