Paul Brunner: regulärer Ausdruck

Hallo,

ich bin etwas ratlos, ob eines regulären Ausdruckes. Der macht einfach nicht was ich will.

Hier ist das Schätzchen:
$pattern=preg_replace("/([a-z0-9]){5}|\b/", "$1?|", $pattern);

Die codezeile soll ein Suchmuster (auch wieder ein regulärer Ausdruck) modifiziern.

Suchmuster Vorher: /daumen|nuff/
Suchmuster Nachher: /daumen?|nuff/ (so sollte es sein)

Idee ist Suchbegriffe innerhalb des Suchmusters, die 5 Zeichen oder länger sind mit einem ? zu versehen. So wird neben "daumen" auch "daume" gefunden.

Leider liefert der der reguläre Ausdruck das zurück: /dn?|nuff/
Und ich habe keinen blassen warum.

Gruß
Paul

  1. Hi,

    ([a-z0-9])

    hier haust Du _ein_ Zeichen in $1,

    {5}

    und hier möchtest Du $1 fünffach haben. Oder wie ist das zu verstehen?

    Leider liefert der der reguläre Ausdruck das zurück: /dn?|nuff/
    Und ich habe keinen blassen warum.

    Weil das letzte der fünf $1 übrig bleibt.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes