Regex.Split - jak zachować separator w wyniku?

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/questions/521146/c-sharp-split-string-but-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.
1

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).

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