Ankündigung

Einklappen
Keine Ankündigung bisher.

Regex funktioniert nicht

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Regex funktioniert nicht

    Hi,

    ich bin in Sachen Regex nicht gut und habe jetzt schon viell probiert.

    Ich habe einen String nach dem Motto:

    +key1-key2-key3 .... +keyN

    Jedes Suchwort ist ein + oder - angehängt. Diesen String möchte ich nun in ein array lesen, das dann folgende Elemente enthält:

    +key
    -key2
    -key3
    ...
    +keyN

    Das ist meine letzte Version:

    PHP-Code:
    $line "+henne-ei+huhn";

    $res preg_split('/(\+[^-\+]|-[^-\+])/'$line);

    print_r($res); 
    +|- darf einmal vorkommen und danach darf jedes Zeichen vorkommen außer + und -. Also auch mehrere Wörter am Stück. An meinem Beispiel sollte er also

    +henne
    -ei
    +huhn

    zurückgeben.

    Ich denke nicht das mein Regexansatz so verkehrt ist, weiß aber nicht mehr weiter.

    Smilla

  • #2
    Verwende PHP: preg_match_all - Manual
    [URL]http://hallophp.de[/URL]

    Kommentar


    • #3
      Vielen Dank für den Tipp. Durch das ändern der Funktion gab es Ouput und ich konnte die letzte Anpassung vornehmen. Schaut nun so aus:

      PHP-Code:
      preg_match_all('/(\+[^-\+]*|-[^-\+]*)/'$line$res); 

      Kommentar


      • #4
        Das ODER-Konstrukt kannst du auch weglassen und den Ausdruck etwas vereinfachen:
        Code:
        /[\+\-][^\+\-]*/
        [URL]http://hallophp.de[/URL]

        Kommentar


        • #5
          Ich glaube in Klassen muss man beide Zeichen nicht escapen. - muss allerdings am Rand stehen.
          [COLOR="#F5F5FF"]--[/COLOR]
          [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
          [COLOR="#F5F5FF"]
          --[/COLOR]

          Kommentar

          Lädt...
          X