JavaScript Nicht-regex Ersetzen
Führen Sie einen der vorhandenen JavaScript-frameworks haben eine nicht-regex - replace()
- Funktion,
oder hat dies bereits gepostet irgendwo im web als one-off-Funktion?
Ich zum Beispiel ersetzen möchten "@!#$123=%"
und ich will nicht sorgen über die Zeichen zu entkommen. Die meisten Sprachen zu haben scheinen beide Methoden zu tun Ersatz. Ich würde gerne sehen, diese einfache Sache Hinzugefügt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
kann ich Missverständnisse deine Frage, aber javascript hat eine
replace()
Bearbeiten: (siehe Kommentare) die 5. Auflage zu haben scheint diese info in es, obwohl es nicht zeigen, wenn ich link direkt zu. hier ist der relevante Teil:
Ich hatte genau das gleiche problem, Suche nach einem nicht-regex javascript string replace () - Methode. Meine Lösung war die Verwendung einer Kombination von split() und join():
gibt:
vergleichen mit ersetzen():
die bizarrerweise gibt:
replace()
ist ein schlechter Witz. Vielen Dank für diesen hack. Ich denke, es ist die beste Lösung. +1RegExp("$")
mit dem Ende der Zeile, wie erwartet. Sollten Sie entkommen, Ihre Dollars, bevor es zu RegExp:RegExp("\$")
s.split("$").join("£")
entsprichts.replace(/\$/g, "£")
oders.replace(RegExp("\\$", "g"), "£")
.Versuchen Sie dies:
Können Sie es tun, mit oder ohne groß-und Kleinschreibung.
Leider, JavaScript indexOf nicht nehmen locale vs. invariante als argument, so haben Sie zu ersetzen
toLowerCase
mittoLocaleLowerCase
wenn Sie wollen, die Kultur zu erhalten-Spezifität.oder als Prototyp: