Регулярное выражение C # для разбиения пар значений, разделенных точкой с запятой, в массив - PullRequest
0 голосов
/ 23 октября 2009

Учитывая следующие строки

7;#User One
7;#User Two;#9;#User Two
7;#User Two;#9;#User Two;#123;#User Three

Я хотел бы построить регулярное выражение, которое «разбивает» их на части, чтобы каждая строка возвращала следующие совпадения:

["7;#User One"]
["7;#User Two", "9;#User Two"]
["7;#User Two", "9;#User Two", "123;#User Three"]

Я попробовал несколько методов, но не могу заставить его работать должным образом. Кто-нибудь может помочь?

Ответы [ 3 ]

3 голосов
/ 23 октября 2009

Это надо сделать

#?([0-9]+;#[a-zA-Z\s]+)
1 голос
/ 23 октября 2009

Следующее даст вам совпадения в группе UserName

#*(?<UserName>\d+;#[^;]+)

Было бы просто, если бы вы добавили строку к хешу и добавили точку с запятой ...

1 голос
/ 23 октября 2009

Вот, пожалуйста:

#?\d*;#User [a-zA-Z]*[|#]?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...