preg_match_all zerlegt string nicht richtig

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

  • preg_match_all zerlegt string nicht richtig

    Hallo ich habe folgenden Code geschrieben:

    PHP-Code:
    <?php
    $test 
    "{elseif \$test == false}falsch{elseif \$test == true}ok";

    preg_match_all('/{elseif (.+?)}(.*?)/si'$test$matchPREG_SET_ORDER);

    print_r($match);
    ?>
    Mein Probelm ist jetzt, dass die Funktion "preg_match_all" den String nicht so zerlegt, wie ich das gerne hätte (bin ein NOOB in Regulären Ausdrücken).

    Das wird ausgegeben:

    Array (
    [0] =>
    Array (
    [0] => {elseif $test == false}
    [1] => $test == false
    [2] => )
    [1] =>
    Array (
    [0] => {elseif $test == true}
    [1] => $test == true
    [2] => )
    )

    Wie man sieht fehlt immer der Teil, der nach dem {elseif blabla} kommt.

    Ich währe euch echt dankbar wenn ihr mir helfen könntet.

    Habe auch schon im Forum nach Regulären Ausdrücken gesucht nur damit bin ich auch nicht viel weiter gekommen.

  • #2
    dies wäre z.B. eine möglichkeit:

    "#\{elseif .*?\}([^\{]*)#si"

    die einzelnen () für di Treffer kannst du ja selbst noch setzen, wenn du noch mehr Infos ausser dem was nach dem elsif kommt haben willst.
    Zuletzt geändert von jmc; 10.12.2006, 15:26.

    Kommentar


    • #3
      Danke jmc dank dir habe ich es hinbekommen

      Kommentar

      Lädt...
      X