420 Stimmen

Ersetzen Sie mehrere Zeichen in einem replace-Aufruf

Ich muss jede Instanz von '_' durch ein Leerzeichen ersetzen und jede Instanz von '#' durch nichts/leer.

var string = '#Bitte send_an_informationspaket_an_die_folgende_Adresse:';

Ich habe das versucht:

string.replace('#','').replace('_', ' ');

Ich mag es nicht wirklich, Befehle wie diese aneinanderzureihen. Gibt es einen anderen Weg, um es in einem zu machen?

1voto

Dies funktioniert auch für Jiddisch andere Zeichen wie NEKUDES

var string = "";

var string_norm = string.replace(/[]/g, '');
document.getElementById("demo").innerHTML = (string_norm);

1voto

chiukaun Punkte 3

Was ist, wenn Sie einfach eine verkürzte Form des If-Else-Statements verwenden? macht es zu einem Einzeiler.

const betterWriting = string.replace(/[#_]/gi , d => d === '#' ? '' : ' ' );

0voto

Yathiŋ K Rào Punkte 5
String.prototype.replaceAll=function(obj,keydata='key'){
 const keys=keydata.split('key');
return Object.entries(obj).reduce((a,[key,val])=> a.replace(new RegExp(`${keys[0]}${key}${keys[1]}`,'g'),val),this)
}

const data='hids dv sdc sd {yathin} {ok}'
console.log(data.replaceAll({yathin:12,ok:'hi'},'{key}'))

0voto

Abraham Brookes Punkte 1504

Nicht sicher, warum noch niemand diese Lösung angeboten hat, aber ich finde, dass sie ziemlich gut funktioniert:

var string = '#Bitte_senden_Sie_ein_Informationspaket_an_die_folgende_Adresse:'
var placeholders = [
    "_": " ",
    "#": ""
]

for(var placeholder in placeholders){
    while(string.indexOf(placeholder) > -1) {
        string = string.replace(placeholder, placeholders[placeholder])
    }
}

Sie können so viele Platzhalter hinzufügen, wie Sie möchten, ohne Ihre Funktion aktualisieren zu müssen. Einfach!

0voto

Rajaraman Punkte 1

Oder-Option funktioniert gut für mich Beispiel let sample_string = **some words with html tag** |. muss das strong-Tag und den "|" Text entfernen. der Code sieht so aus = sample_string.replace(/\|(.*)|**|<\/strong>/g,"")**

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X