Regex split string aber Trennzeichen beibehalten

8

Ich würde gerne ein Regex.Split auf einigen Trennzeichen machen, aber ich würde gerne die Separatoren behalten. Um ein Beispiel zu geben, was ich versuche:

%Vor%

Der reguläre Ausdruck, den ich mir ausgedacht habe, ist new Regex("\[|\]|\]\[") . Dies gibt mir jedoch folgendes:

%Vor%

Die Separatoren sind verschwunden (was bei meiner Regex sinnvoll ist). Gibt es eine Möglichkeit, die Regex so zu schreiben, dass die Separatoren selbst erhalten bleiben?

    
Ronald Wildenberg 26.05.2010, 06:25
quelle

2 Antworten

11

Verwende Lookarounds mit null Länge; Sie möchten auf

aufteilen %Vor%

Das heißt, irgendwo, wo wir eine Übereinstimmung von einem Literal [ voraus behaupten, oder wo wir eine Übereinstimmung von Literal ] hinter behaupten.

Als C # -Zeichenfolgenliteral ist dies

%Vor%

Siehe auch

Verwandte Fragen

Beispiel in Java

%Vor%     
polygenelubricants 26.05.2010, 06:27
quelle
1

Sie könnten .Matches anstelle von .Split , Beispiel ( Ссылка ) verwenden:

%Vor%     
kennytm 26.05.2010 06:34
quelle

Tags und Links