Heim > Java > javaLernprogramm > Wie entferne ich effizient mehrere führende und nachfolgende Leerzeichen aus Java-Strings?

Wie entferne ich effizient mehrere führende und nachfolgende Leerzeichen aus Java-Strings?

Patricia Arquette
Freigeben: 2024-11-25 17:57:12
Original
683 Leute haben es durchsucht

How to Efficiently Remove Multiple, Leading, and Trailing Spaces from Java Strings?

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(" +", " ");
Nach dem Login kopieren

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, "");
Nach dem Login kopieren

Diese komplexe Regex hat drei alternativen:

  • ^ : Entspricht einer beliebigen Leerzeichenfolge am Anfang der Zeichenfolge
  • $: Entspricht einer beliebigen Leerzeichenfolge am Ende der Zeichenfolge
  • ( _) : Entspricht einer beliebigen Folge von Leerzeichen in der Mitte der Zeichenfolge

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

  • String.trim(): https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#trim()
  • Reguläre Ausdrücke für Wiederholungen: https://regular-expressions.info/ Wiederholung
  • Reguläre Ausdrücke für Anker: https://regular-expressions.info/Anchors

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage