Eliminieren mehrerer Leerzeichen und führender/nachgestellter Leerzeichen in Java-Strings
In Java können Sie auf Strings stoßen, die mehrere aufeinanderfolgende Leerzeichen und unnötige Leerzeichen enthalten der Anfang oder das Ende. Um dieses Problem zu lösen, suchen Sie nach einem effizienten Ansatz, um alle mehreren Leerzeichen durch ein einziges Leerzeichen zu ersetzen und gleichzeitig führende und nachgestellte Leerzeichen zu eliminieren.
Lösung mit trim() und replaceAll()
Die empfohlene Lösung kombiniert die Methode trim() mit der Methode replaceAll():
String after = before.trim().replaceAll(" +", " ");
trim() entfernt alle führenden und nachfolgenden Leerzeichen aus der angegebenen Zeichenfolge. Dann ersetzt replaceAll() alle Vorkommen von zwei oder mehr aufeinanderfolgenden Leerzeichen durch ein einzelnes Leerzeichen.
Keine trim()-Regex-Lösung
Obwohl weniger lesbar, aber möglich um das gleiche Ergebnis mit einem einzigen replaceAll() zu erzielen:
String pattern = "^ +| +$|( )+"; String after = before.replaceAll(pattern, "");
Diese komplexe Regex hat drei alternativen:
In allen Fällen wird die übereinstimmende Folge durch $1 ersetzt, Erfassen eines einzelnen Leerzeichens anstelle mehrerer Leerzeichen oder vollständiges Eliminieren dieser am Anfang oder Ende.
Zusätzliche Ressourcen
Das obige ist der detaillierte Inhalt vonWie entferne ich effizient mehrere führende und nachfolgende Leerzeichen aus Java-Strings?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!