изменить регулярное выражение, чтобы игнорировать подчеркивания после вопросительных знаков - PullRequest
1 голос
/ 25 января 2010
(.[^_]+) 

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

есть. игнорировать любые подчеркивания после?

Ответы [ 3 ]

2 голосов
/ 25 января 2010

Это разрешит подчеркивание только после знака вопроса:

(.[^_]*(\?.*)?)

0 голосов
/ 25 января 2010

Поместите сам знак вопроса в класс отрицанных символов:

(.[^_?]+)

Это будет соответствовать всем символам, пока не будет подчеркнуто или вопросительный знак.

0 голосов
/ 25 января 2010

.[^_]*?\?.*

Все, кроме подчеркивания ноль или более раз, ленивый квантификатор (самое короткое совпадение) с последующим знаком вопроса. Другой вариант:

.[^_\?]*\?.*

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