2016-05-25 12 views
0

Ich verwende diese Regex !\{t\}([^\{]+)\{/t\}!, um {t}Any string here{/t} zu entsprechen. Jetzt muss ich einen optionalen Backslash im Muster vor dem Schrägstrich hinzufügen, um auch {t}Any string here{\/t} zu entsprechen.Notwendigkeit, eine einfache Regex zu ändern

Das sind einige Muster, das ich versucht, aber hat nicht funktioniert:

  • !\{t\}([^\{]+)\{\\?/t\}!
  • !\{t\}([^\{]+)\{(\\)?/t\}!
  • !\{t\}([^\{]+)\{[\\]?/t\}!

Antwort

1

Sie verwenden können:

!\{t\}([^\{]+)\{\\?/t\}! 

, um Backslash optional zu machen.

RegEx Demo

Wenn Sie PHP verwenden sind dann:

$re = "!\\{t\\}([^\\{]+)\\{\\\\?/t\\}!"; 
+0

Ja Mann !! der zweite Reguex arbeitete. Ich benutze PHP. Aber warum muss ich das in PHP machen? –

+0

In PHP, wenn Sie doppelte Anführungszeichen für Sie Regex verwenden, dann muss jeder Backslash verdoppelt werden – anubhava

+1

Einfaches Zitat und immer noch benötigt, um es zu tun ... -_- –

Verwandte Themen