Nach einer etwas längeren Pause möchte ich euch heute zeigen, wie man in Javascript ein beliebiges Zeichen suchen und ersetzen kann. Früher habe ich mich immer aufgeregt, dass man mit Javascript nur das erste Vorkommen eines Zeichens ersetzen kann. So musste ich immer auf eine fertige Funktion aus dem Internet zurückgreifen, was mir nie richtig gefallen hat.
Nun möchte ich euch beide Varianten kurz zeigen. Zuerst die “normale” Replace-Funktion von Javascript, welche nur das erste Vorkommen eines Zeichens ersetzt:
var str = 'Dies ist ein Text.';
var res = str.replace('e', '#');
alert(res);
Die Alert-Box gibt hier folgendes aus:
Di#s ist ein Text.
Und jetzt ändern wir den ersten Parameter der Replace-Funktion, damit alle Zeichen im String ersetzt werden:
var str = 'Dies ist ein Text.'; var res = str.replace(/e/g, '#'); alert(res);
Et voilà, alle Zeichen wurden korrekt ersetzt:
Di#s ist #in T#xt.
Wenn jemand z.B. einen Punkt durch ein Ausrufezeichen ersetzen möchte, muss man den Punkt maskieren. Das heisst einen Backslash vor den Punkt setzen.
var str = 'Dies ist ein Text. Mit zwei Sätzen.'; var res = str.replace(/\./g, '!'); alert(res);