Ich habe versucht, die Methode (Teil des Tutorials auf w3schools) neu zu schreiben.
>Das Problem besteht darin, eine variable Zeichenfolge so zu machen, dass sie Teil des regulären Ausdrucks wird.
Tutorial Beispielcode:
%Vor%Ich habe es versucht:
%Vor%Die Art, wie ich es versucht habe, hat nicht funktioniert.
Sie müssen RegExp
constructor verwenden, wenn Sie einen Wert der Variablen als Regex übergeben möchten.
Wenn Ihre Variable spezielle Zeichen enthält, ist es besser, diese zu umgehen.
%Vor%Sie hätten nach "dynamischen regulären Ausdrücken" suchen können, und Sie hätten gefunden: Javascript Regexp dynamische Generierung von Variablen? oder Dynamische (variable) Zeichenfolge als Regex-Muster in JavaScript verwenden die beide sehr gut beschreiben.
Beachten Sie, dass Sie eine Zeichenfolge an match
übergeben. Wenn wir der Dokumentation folgen, wird dies% co_de tun %. Daher sollten Sie new RegExp(test)
und /
strings vermeiden und dem RegExp-Konstruktor entsprechende Flags hinzufügen: Der Standardkonstruktor fügt weder eine globale Suche ( /gi
) noch eine Suche ohne Berücksichtigung der Groß- / Kleinschreibung ( g
) hinzu.
Also die Lösung für Ihr Problem:
%Vor%Dies wird zurückkehren:
%Vor%Hinweis:
Das Formular i
funktioniert nur im Firefox-Browser, ist aber veraltet und löst eine Konsolenwarnung aus Firefox 39 aus (siehe RGraham-Kommentar).
Tags und Links javascript string