Ich habe eine Zeichenfolge und ich versuche zu findout was einen besseren Weg durch ersetzt (die boundry Räume als auch, wenn sie vorhanden sind)String-Wert und boundry Leerzeichen ersetzen, wenn sie
während auch den Wert ohne ersetzen tun Multipule-Pässe (dh Aufruf, trim_multispace
und trimed_result
).
var replaceVal = "c";
var strVals = "a b c d e f g h";
var replacedVal = strVals.replace(new RegExp("\\b"+replaceVal+"\\b",""),"");
alert(replacedVal)
var trim_multispace = replacedVal.replace(/ +(?=)/g,'');
var trimed_result = trim_multispace.replace(/^\s+|\s+$/g, '');
alert(trimed_result)
Vielen Dank! Narendra, und warum hast du deine Antwort bearbeitet? Das Original funktionierte gut? – david
@david Ich habe dem 'RegExp'-Konstruktor ein' g' -Flag hinzugefügt, um eine globale Ersetzung von 'replaceVal' vorzunehmen. Das heißt, wenn 'replaceVal' irgendwo in der Zeichenkette mehrfach gefunden wird, werden alle Vorkommen ersetzt. Ich dachte, das würde zu deinem Szenario passen. –
nur um Sie wissen zu lassen, dass die neu anhängende globale Flagge Ihre Lösung für meinen Fall fehlschlägt, weil es alle Vorkommen für 'replaceVal' ersetzt wie 'abcdefg hc'' c' wird aus 'hc' entfernt – david