Heim >Java >javaLernprogramm >Wie kann ich unerwünschte Leerzeichen effizient aus Strings in Java entfernen?
Sie haben eine Zeichenfolge, die Leerzeichen zwischen den einzelnen Wörtern enthält, und Sie möchten diese unnötigen Leerzeichen entfernen. Die Funktion trim() entfernt nur führende und nachfolgende Leerzeichen, während replaceAll("\W", "") alle Nicht-Wort-Zeichen, einschließlich des Gleichheitszeichens (=), entfernt.
Um das gewünschte Ergebnis zu erzielen, Sie können den folgenden auf regulären Ausdrücken basierenden Ersatz verwenden:
st.replaceAll("\s+", "")
Dieser Ausdruck entfernt alle aufeinanderfolgenden Leerzeichen (\s) aus der Zeichenfolge. Der Quantifizierer stimmt mit einem oder mehreren Leerzeichen überein und entfernt so effektiv alle Leerzeichen.
Alternativ können Sie den folgenden vereinfachten Ausdruck verwenden, der das gleiche Ergebnis liefert:
st.replaceAll("\s", "")
Dieser Ausdruck entfernt alle einzelnen Leerzeichen aus der Zeichenfolge.
Während der zweite Ausdruck etwas schneller ist (ungefähr 20 %), ist er bei der Verarbeitung nicht so effizient wie der erste Ausdruck mit vielen aufeinanderfolgenden Leerzeichen. Für eine optimale Leistung wird daher die Verwendung von st.replaceAll("\s ", "") empfohlen.
Denken Sie daran, die aktualisierte Zeichenfolge einer Variablen zuzuweisen, wenn Sie sie nicht direkt verwenden:
st = st.replaceAll("\s+", "")
Das obige ist der detaillierte Inhalt vonWie kann ich unerwünschte Leerzeichen effizient aus Strings in Java entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!