PREG: Ausmaskieren von komplexen Sonderzeichenstrukturen

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

  • PREG: Ausmaskieren von komplexen Sonderzeichenstrukturen

    <?
    $zeichenkette = "Holz\/\?schwimmt";
    $such = '/\\\/\\\?/';
    $ersetz = 'kohle';
    echo preg_replace($such, $ersetz, $zeichenkette);
    ?>
    Warning: preg_replace() [function.preg-replace]: Unknown modifier '\'

    Hi,

    wie im obigen Beispiel ersichtlich, will ich aufeinanderfolgende Sonderzeichen ersetzen und das ganze funktioniert auch prima in meinen Tools wie http://www.regextester.com/ und in verschiedenen Regex-Dialekten, nur im PHP geht es nicht. Wie muss ich das umformulieren???

    lg,
    Konrad

  • #2
    nimm dein regex wie du es in deinen Tools verwendet hast du wende noch ein addslashes() darauf an, bevor du es ausfühst. Dann sollte es hinhauen.

    Kommentar


    • #3
      <?
      $zeichenkette = 'Holz\/\?schwimmt';
      $such = '%\\\/\\\?%'; // geht noch nicht
      $ersetz = 'kohle';
      echo preg_replace($such, $ersetz, $zeichenkette);
      ?>

      Hi,

      es funktioniert, wenn man den Delimiter, (ab nun %) ändert!

      lg
      Konrad

      Kommentar

      Lädt...
      X