Heim  >  Artikel  >  Java  >  Wie teilt man Zeichenfolgen unter Beibehaltung von Trennzeichen mithilfe regulärer Ausdrücke auf?

Wie teilt man Zeichenfolgen unter Beibehaltung von Trennzeichen mithilfe regulärer Ausdrücke auf?

Susan Sarandon
Susan SarandonOriginal
2024-10-24 15:59:01848Durchsuche

How to Split Strings Preserving Delimiters Using Regular Expressions?

Strings unter Beibehaltung der Trennzeichen aufteilen

Wenn Sie mit Strings arbeiten, die mehrere Trennzeichen enthalten, ist es wichtig, den String in seine Bestandteile aufzuteilen Beibehaltung der Trennzeicheninformationen. Die String.split()-Methode bietet einen unkomplizierten Mechanismus zum Aufteilen von Zeichenfolgen, extrahiert jedoch nur die Teilzeichenfolgen, ohne die Trennzeichen beizubehalten.

Um das gewünschte Ergebnis der Aufteilung einer Zeichenfolge und der Beibehaltung der Trennzeichen zu erzielen, kann man die Methode „regular“ verwenden Ausdrücke mit Lookahead- und Lookbehind-Behauptungen. Lookahead (?=) und Lookbehind (?<=) sind spezielle Syntaxen, die einen Abgleich ermöglichen, ohne Zeichen aus der Eingabezeichenfolge zu verbrauchen.

Betrachten Sie das folgende Beispiel:

<code class="java">String input = "(Text1)(DelimiterA)(Text2)(DelimiterC)(Text3)(DelimiterB)(Text4)";

String[] parts = input.split("((?=;)|(?<=;))");</code>

Hier Code:

  • Der reguläre Ausdruck (?=;) entspricht einer Position direkt vor einem Semikolon (;).
  • Der reguläre Ausdruck (?<=;) entspricht einer Position genau nach einem Semikolon (;).
  • Das | Der Operator gibt an, dass die Übereinstimmung entweder für (?=;) oder (?<=;) erfolgen kann.
  • Die äußersten Klammern schließen den gesamten Ausdruck ein und dienen als einfangende Klammern.

Bei Verwendung mit der Methode split() identifiziert dieser reguläre Ausdruck jedes Trennzeichen (;) und erstellt eine leere Übereinstimmung dafür. Somit enthalten die resultierenden Array-Teile die folgenden Elemente:

[Text1, ;, Text2, ;, Text3, ;, Text4]

Dieser Ansatz ermöglicht es uns, die ursprüngliche Struktur des Strings beizubehalten und ihn gleichzeitig in seine einzelnen Komponenten zu unterteilen. Es handelt sich um eine leistungsstarke Technik, um komplexe Zeichenfolgen so zu analysieren, dass ihre Integrität erhalten bleibt.

Das obige ist der detaillierte Inhalt vonWie teilt man Zeichenfolgen unter Beibehaltung von Trennzeichen mithilfe regulärer Ausdrücke auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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