Ich habe diese Frage zu Javascript Trim mit einer Regex-Antwort gelesen .
Dann erwarte ich, dass der Innenraum zwischen Hallo und Welt durch Trimmen entfernt wird .
function myFunction() {
alert("Hello World ".trim());
}
BEARBEITET
Warum habe ich das erwartet?
Unsinn! Offensichtlich entfernt Trimmen keine inneren Räume!, Nur führende und nachfolgende, so funktioniert Trimmen, dann war dies eine sehr falsche Frage, entschuldige ich mich.
javascript
html
trim
Hernán Eche
quelle
quelle
Hello World
ist bereits "getrimmt".Antworten:
Zum Entfernen von Leerzeichen verwenden
Verwenden Sie für alle Leerzeichen den Vorschlag von Rocket in den Kommentaren unten!
quelle
.replace(/ /g, '')
wenn mehr als ein Leerzeichen vorhanden ist..replace(/\s/g, '')
.\s
Leerzeichen, Tabulatoren und neue Zeilen an.Wahrscheinlich, weil Sie vergessen haben, die Lösung in der akzeptierten Antwort zu implementieren . Das ist der Code, der
trim()
Arbeit macht .aktualisieren
Diese Antwort gilt nur für ältere Browser. Neuere Browser unterstützen offenbar
trim()
nativ.quelle
Sie können die Strings- Ersetzungsmethode mit einem regulären Ausdruck verwenden.
"Hello World ".replace(/ /g, "");
RegExp
// - Übereinstimmende Leerzeichen für reguläre Ausdrücke
g - Globale Flagge; Finde alle Übereinstimmungen, anstatt nach dem ersten Spiel anzuhalten
Code-Snippet anzeigen
quelle
Sie können verwenden
trim()
Entfernt nur nachgestellte Leerzeichen in der Zeichenfolge (erste und letzte in der Kette). In diesem Fall ist dieser regExp schneller, da Sie ein oder mehrere Leerzeichen gleichzeitig entfernen können.Wenn Sie die leere Ersatzzeichenfolge in '$' ändern, wird der Unterschied viel deutlicher:
Leistungsvergleich -
/\s+/g
ist schneller. Siehe hier: http://jsperf.com/s-vs-squelle