[REGEX] Regex geht nicht mehr wenn "[]" im Suchmuster

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

  • [REGEX] Regex geht nicht mehr wenn "[]" im Suchmuster

    Ich habe ein Problem mit folgendem Regulären Ausdruck:

    PHP-Code:
    preg_replace( '#\{\$(w+)\|(\w+)\}#U', "<?php echo $2(\$$1); ?>", $tpl );
    Auf {$var|intval} springt der Ausdruck an, nicht jedoch auf:
    {$var[key]|intval} .

    Weis jemand woran das liegt?
    daniel-portal.com/games Free Games and more

  • #2
    [ und ] sind kein \w.
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Hm okay stimmt. Aber ich bekomme es irgendwie nicht hin da noch die Zeichen ' [ ] hinzuzufügen.

      PHP-Code:
      preg_replace( "#\{\$(\w+)\|((\w|[\[\]'])+)\}#U", "<?php echo $2(\$$1); ?>", $tpl );
      daniel-portal.com/games Free Games and more

      Kommentar


      • #4
        Wenn du die als Zeichen haben willst musst du die escapen (genauso wie deine ws) (oder ist das bei JS anders?)

        Kommentar


        • #5
          Ich hab sie ja mit einem "\" Escaped ist leider durch das Board nicht sichtbar. Zitier mal meinen Beitrag dann siehst du den vollständigen Regex.
          daniel-portal.com/games Free Games and more

          Kommentar


          • #6
            Habs jetzt selbst rausbekommen.
            daniel-portal.com/games Free Games and more

            Kommentar


            • #7
              dann poste doch bitte die lösung, falls später mal jemand ein ähnliches problem hat.

              Kommentar

              Lädt...
              X