2016-03-30 5 views
1

Мне нужно регулярное выражение для поиска строки для M? ' не следует, или)regex negative lookahead не работает

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

M?'(?!,|\)) 

Любая помощь будет принята с благодарностью.

Спасибо!

+2

Escape '?': 'M \? '(?!, | \))' (Или 'M \?' (?! [,]])') –

ответ

1

Попробуйте с M\?'(?!,|\))

Regex101 Demo

+0

Отлично, спасибо! – user1541301

+1

@ user1541301: Нет, это не так. 'M \? '(?! [,]])' Is. И 'M [?] '(?! [,]]) Является наиболее отказоустойчивым. –

+1

@ WiktorStribiżew: Спасибо за улучшение. –

1

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

M\?'(?!,|\)) 
+0

Вы удалили символ '' 'из поиска строка? – Marcus

+0

Хорошо поймать @Marcus. Я, наверное, этого не видел. – Saleem

Смежные вопросы