Имея следующее регулярное выражение:

(?(?<=\AA)a|e)/g

и тестовая строка:

Aa
Ae
Be

она совпадает a(строка # 1), e(линия 2 #), e(3 строки #). Я думаю , что он должен соответствовать только (строка # 1) , потому что есть 3 строки , но только одна строка - a соответствует только один раз (на первой линии строки) и , следовательно , применяет шаблон , который соответствует только в кулачном линии ,

1 ответ1

-1

Should't это соответствует только (строка # 1) только?

Нет.

Ваше текущее выражение переведено на английский:

  • ?(?<=\AA) - если текущему символу предшествует начало строки AND A
    • то Совпадение - это будет соответствовать в первой строке
    • иначе (= любые другие случаи) соответствуют a - это будет соответствовать a в строках 2 и 3

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .