$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");
Dies ist ein Ausschnitt aus meinem Code. Ich möchte einer ID eine Klasse hinzufügen, nachdem ich die Texteigenschaft einer anderen ID erhalten habe. Das Problem dabei ist, dass die ID mit dem benötigten Text Lücken zwischen den Buchstaben enthält.
Ich möchte, dass die Leerzeichen entfernt werden. Ich habe es versucht TRIM()
und REPLACE()
aber das funktioniert nur teilweise. Das REPLACE()
einzige entfernt das 1. Leerzeichen.
quelle
.replace(/\s+/g, '')
was für mich völlig in Ordnung ist.x = " Many spaces before and after "
y = x.replace(/(^\s+|\s+$)/g, "")
Das^\s
bedeutet Leerzeichen nach dem Anfang der Zeichenfolge,\s$
bedeutet Leerzeichen am Ende der Zeichenfolge, die|
für entweder / oder in der Gruppe steht, und derg
Modifikator wird in den obigen Kommentaren erläutert. Sie benötigen außerdem+
nach jedem Quantifizierer\s
, um eine oder mehrere Instanzen von Leerzeichen zu erfassen.Ersetzt nur das erste Leerzeichen , einschließlich Leerzeichen, Tabulatoren und neuer Zeilen.
Um alle Leerzeichen in der Zeichenfolge zu ersetzen, müssen Sie den globalen Modus verwenden
quelle
+
fügt nichts hinzu, da wir bereits deng
(globalen) Modifikator verwendenDie Verwendung
String.prototype.replace
mit Regex, wie in den anderen Antworten erwähnt, ist sicherlich die beste Lösung.Aber nur zum Spaß können Sie auch alle Leerzeichen aus einem Text entfernen, indem Sie
String.prototype.split
und verwendenString.prototype.join
:quelle