Java Script suchen und ersetzen

Hallo,

ich habe folgendes Java Script:

var suchen = new Array("[", "]", "!", "_"); var ersetzen = new Array("<", ">", "\"", " "); for (var i = 0; i < suchen.length; i++) { aTag = aTag.replace(suchen[i], ersetzen[i]); eTag = eTag.replace(suchen[i], ersetzen[i]); }
Ich möchte aber, dass alle Zeichen im String gesucht und ersetzt werden. Das geht mit //g: http://de.selfhtml.org/javascript/ob…ng.htm#replace

Leider funktioniert das hier aber nicht:

var suchen = new Array("[", "]", "!", "_"); var ersetzen = new Array("<", ">", "\"", " "); for (var i = 0; i < suchen.length; i++) { aTag = aTag.replace(/suchen[i]/g, ersetzen[i]); eTag = eTag.replace(/suchen[i]/g, ersetzen[i]); }
Kann mir jemand helfen?

aTag = "[[[[[]]]]]!__!"; var suchen = new Array("\\[", "\\]", "!", "_"); var ersetzen = new Array("<", ">", "\"", " "); for (var i = 0; i < suchen.length; i++) { aTag = aTag.replace(new RegExp(suchen[i], "g"), ersetzen[i]); } alert(aTag);

Danke. Warum das hier

"\\[", "\\]"Warum die Backslashs?

EDIT:

Stimmt, funktioniert nur mit den zwei Backslashs. Gibts dafür auch eine Begründung?

Die Eckige Klammer braucht man für was anderes und deshalb muss sie escaped werden.

[code]var text = „abcdef“
var reg = new RegExp(„[a-c]“, „g“);
erg = text.replace(reg, „_“);

var text2 = „abcdef“;
var reg2 = new RegExp(„[adf]“, „g“);
erg2 = text2.replace(reg2, „_“);

alert("Ursprünglicher Text: " + text + "\nRegexp: " + reg + "\nErgebnis: " + erg + "\n\n\nUrsrpünglicher Text: " + text2 + "\nRegexp " + reg2 + "\nErgebnis: " + erg2);[/code]

Danke, habs verstanden;Jump

@ Commodore

WOW! Danke ebenfalls. Konnte es auch gebrauchen! :stuck_out_tongue:

Mfg Speedy