регулярное выражение: совпадение с тем же выражением неизвестное количество раз - PullRequest
0 голосов
/ 28 апреля 2009

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

"one" - matches
("two") - doesn't match

Можно ли повторить совпадение, чтобы ввести:

"one" ("two") "three"

вернул бы один и три? Единственное, что я могу придумать, это захватить то, что осталось, и обработать с тем же регулярным выражением, т.е.:

process > "one" ("two") "three" - returns one and "("two") "three""
process > ("two") "three"       - returns failed and "three", not sure how but hey
process > "three"

Сейчас я изучаю регулярные выражения, так что просто интересно, встроена ли эта функциональность?

NB: это может быть повторение , ссылающегося на уже существующую группу в регулярном выражении, c # , но не достаточно ясно для меня, чтобы следовать: (.

1 Ответ

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

Вам нужна функция Regex.Matches(), которая возвращает все подстроки, соответствующие регулярному выражению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...