2010-06-02 4 views
4

Скажем, у меня естьМожет ли матч регулярных выражений основываться на двух строках текста?

Защиту
а
хуг
а

И я хочу, чтобы соответствовать

хуга
AbC

в целом

Возможно ли использование наиболее распространенного RegEx? Это не Perl RegEx или. Net Regex, которые имеют многострочные флаги.

Я думаю, это будет BNF, чтобы соответствовать этому.

ответ

2

Regexes работает над любым текстом, который вы им даете, многострочным или иным способом. Если это случается, чтобы содержать переводы строк, то это номинально «многострочный» текст, но вам не нужно делать ничего особенного, чтобы соответствовать ему с регулярными выражениями. Linefeed - это еще один символ.

Название «многострочный флаг» (или «многострочный режим») смущает многих людей. Весь этот флаг изменяет значение якорей ^ и $, позволяя им сопоставлять в начале и конце логических строк, а также начало и конец всего текста.

8

Много реализаций регулярных выражений позволяют использовать явные терминаторы строк. Если \ n - разделитель строк, тогда просто найдите xyz\nabc.

+1

В окнах: 'xyz \ r \ nabc' – AlexDev

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