Я хочу захватить слова, которые не имеют одинаковых букв рядом друг с другом. Это находит письмо, а затем проверяет, не является ли другое письмо рядом с ним. Это работает.Почему эти два выражения не равны?
\b((\w)(?!(\2)))+\b
Это один говорит, не совпадают слова, которые имеют одни и те же буквы рядом друг с другом, по крайней мере, это то, что я думаю, что он должен делать, но он не работает.
\b(?!((\w)\3))+\b
** FYI **, второй ссылается на несуществующий подшаблоном (в данном случае '\ 3', это будет' \ 2' ..) и используя Коэффициент '+' вне внешнего вида не поддается количественной оценке. – hwnd
Посмотрите вперед, используя '(?! ...)' does * not * создайте группу захвата, поэтому у вас есть только две группы захвата во втором выражении, что делает '\ 3' недействительным. – poke
@hwnd Что значит несуществующий подшаблон? –