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

1 ответ1

1

Что такое утверждение регулярного выражения?

Утверждение - это регулярное выражение, которое либо успешно (если совпадение найдено), либо не выполнено (если совпадение не найдено).

Они состоят из якорей и Lookarounds.


Якоря

Якорь - это утверждение нулевой ширины. Они не заставляют движок продвигаться по строке или потреблять символы и могут быть одним из следующих:

  • ^ - Совпадение должно начинаться с начала строки или строки.

  • $ - Соответствие должно происходить в конце строки или перед \n в конце строки или строки.

  • \A - совпадение должно происходить в начале строки.

  • \Z - совпадение должно происходить в конце строки или перед \n в конце строки.

  • \z - совпадение должно происходить в конце строки.

  • \G - Совпадение должно происходить в том месте, где закончился предыдущий матч.

  • \b - Матч должен происходить на границе между \w (буквенно - цифровым) и \W (буквенно - цифровым) характером.

  • \B - совпадение не должно происходить на границе \b .

Исходный язык регулярных выражений - краткий справочник


Lookarounds

Lookahead и lookbehind, в совокупности называемые "lookaround", являются утверждениями нулевой длины, такими же, как начало и конец строки, а также начало и конец якорей слова.

Разница в том, что lookaround фактически совпадает с символами, но затем бросает совпадение, возвращая только результат: совпадение или отсутствие совпадения. Вот почему они называются "утверждениями". Они не потребляют символы в строке, а только утверждают, возможно ли совпадение или нет.

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

Source Lookahead и Lookbehind Утверждения нулевой длины

Освоение источника Lookahead и Lookbehind


дальнейшее чтение

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