Ich versuche, einen Teil mit .replace() in JavaScript zu ändern.
Grundsätzlich möchte ich vor und nach dem Spiel beliebigen Text einfügen.
var pattern = new RegExp("<div"+"(.*?)>", "g");
var text = "<div><div class='someClass'>"
text = text.replace(pattern, "<pre>"+"<div>"+ "$1" + ">" +"</pre>")
Der obige Code ändert Text:
"<pre><div>></pre><pre><div> class='someClass'></pre>"
Neben dem extra ">>" Das ist richtig, aber es ist hässlich in der Funktion ersetzen.
Wie kann ich meine Regex ändern, damit ich
Ich habe keine $ 1 verwenden, da es nicht vollständig according to this
unterstützt Wie kann ich
ersetzen, um wie einfacher etwas änderntext = text.replace(pattern, "<pre>"+ "THING_THAT_MATCHED" +"</pre>")
'$ 1 'im Ersetzungsmuster und unterstützt wird. –
Haben Sie eine Quelle dafür? – humanbeing
Sicher, [MDN String # ersetzen()] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_string_as_a_parameter). Sie verwechseln 'RegExp'-Eigenschaften wie' RegExp. $ 1' und Rückwärtsreferenzen innerhalb eines Ersatzmusters. –