Regex: поиск строки с неопределенным количеством слов - PullRequest
1 голос
/ 06 июня 2011

У меня есть тег, похожий на

tag="text textwithdot. text text"

, за которым следует еще один тег, который будет напоминать

tag="text text text"

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

tag="\w+" 

но это находит только одно слово, как мне найти всю строку в кавычках, какой символ подстановки это делает?

Ответы [ 3 ]

1 голос
/ 06 июня 2011

Кроме того, tag=['"]([^"]*)['"], если эти теги могут меняться между 'и "

1 голос
/ 06 июня 2011

Это должно работать для вас:

tag="([^"]*)"

Это в основном означает tag=", за которым следует ноль или более символов, которые не являются двойной кавычкой, а затем двойной кавычкой.

BTWЯ предполагаю, что нет такой вещи, как тег, который содержит символ двойной кавычки.Если такая вещь существует, то к ней нужно применить правило экранирования, а регулярное выражение будет более сложным.

0 голосов
/ 06 июня 2011

Вы можете использовать несносный матч для всего.

tag="[\s\S]*?"

Или используйте . с точкой , соответствующей символу новой строки (при условии, что \n возможно).

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