Получить значение между двумя подстроками с помощью регулярных выражений - PullRequest
0 голосов
/ 23 апреля 2009

Если у меня есть строка «Param1 = значение1; Param2 = значение2; Param3 = val3», как я могу получить значение между подстрокой «Param2 =» и следующей точкой с запятой (или концом строки, в зависимости от того, что произойдет первым)? «

Ответы [ 4 ]

3 голосов
/ 23 апреля 2009

/Param2=([^;]+)/

1 голос
/ 23 апреля 2009

«Param \ d + = ([^;] *)» будет захватывать содержимое между = и; в группе 1

0 голосов
/ 23 апреля 2009

Вы можете использовать эту строку, чтобы поместить все значения в коллекцию Matches Regex class

string regex = "Param[0-9]*?=(?<value>.*?)(;|$)"
0 голосов
/ 23 апреля 2009

Вы можете использовать класс символов, который исключает ; (как уже отвечали другие), или вы можете использовать не жадное совпадение:

/Param2=(.*?);/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...