Regex.Split - jak zachować separator w wyniku?

Odpowiedz Nowy wątek
2014-03-20 14:19
0

Mam tekst: "Ala ma kota". Chcę otrzymać tablicę:

0: "Ala"
1: " "
2: "ma"
3: " "
4: "kota"

Na podstawie tego wątku:
http://stackoverflow.com/ques[...]t-keep-split-chars-separators

Napisałam takie cuś:

string[] set1 = Regex.Split(s1, @"\s");


Jednakże daje mi to w efekcie:

0: "Ala"
1: "ma"
2: "kota"



Czy macie może jakiś pomysł, dlaczego tak? Jak to zrobić poprawnie?

Dodam, że docelowo chcę splitować nie tylko po spacji, ale też po znakach interpunkcyjnych.

Pozostało 580 znaków

2014-03-20 14:27
Rev

Nie zrozumiałaś jak działa to rozwiązanie z pierwszego postu na SO. Jest tam użyte positive-lookbehind, które matchuje, ale nie jest jego wynikową częścią. To pozwala na uzyskanie "Ala", " ma", " kota" (zauważ spacje w dwóch elementach).
Natomiast tobie chodzi o rozwiązanie, które jest przedstawione w drugim poście na SO (http://stackoverflow.com/a/3143036/1269889).


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0