Mailinglisten-Archive |
Michael Borchers schrieb:
>> Hi Michael,
>>
>> Am Montag, 31. Juli 2006 14:31 schrieb Michael Borchers:
>>> $x = "foo[bar]";
>>>
>>> if(preg_match("/[a-z]\[[a-z]\]/", $x))
>>> {
>>> echo "X ok";
>>> }
>>>
>>> was ist falsch, warum liefert er mir kein true?
>> wie meinst Du das mit dem true? preg_match liefert laut Handbuch "die
>> Anzahl der Übereinstimmungen mit Suchmuster zurück". Du müßtest dann
>> hier auf diesen Integer-Wert abfragen. :-)
>
> hab mich in der hektik verschrieben, vorher stand statt "X ok" bei mir
> true:)
>
> habs nun, hätte die klammern nicht escapen dürfen:
> preg_match("/[a-z][[a-z]]/"...
das ist falsch
[[a-z]] findet nicht nur [bar] sondern auch [b[a[r[]
denn [[a-z]] bedeuted
- a-z und [ als Zeichenklasse
- und ein ] am Ende
> wie kann ich nun genau den inhalt zwischen den klammern auslesen, also
> 'bar', über explode oder trim?!
preg_match("/[a-z]+\[([a-z]+)\]/", $x, $found);
--
Sebastian Mendel
www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive