melezhik / swat

Simple Web Application Test
48 stars 12 forks source link

Модификаторы регулярных выражений #8

Closed ivanych closed 8 years ago

ivanych commented 8 years ago

Как в регулярном выражении указать начало и конец строки в многострочном тексте?

К примеру, в тексте

test1
no test2
test2
test3

мне нужно проверить наличие строки

^test2$

Если просто написать

regexp: test2

то будет совпадение со второй строкой (no test2), а это неправильно.

Если же написать

regexp: ^test2$

то совпадений вообще не будет, что тоже неправильно.

Тут нужен модификатор /m, но как его указать в свате?

ivanych commented 8 years ago

А, стоп, поторопился...

ivanych commented 8 years ago

сват проверяет не весь ответ сразу, а построчно?

melezhik commented 8 years ago

да, сват работает в однострочном ( построчном ) режиме, если хочется многострочности могут помочь блоки , но не всегда - https://github.com/melezhik/outthentic-dsl#comments-blank-lines-and-text-blocks ибо они не являются полноценной заменой многострочных регэкспов.

Сразу скажу, что специально решил не возится с многострочностью, ибо не уверен что в этом есть большая польза ...

melezhik commented 8 years ago

распишите какой у вас кейс, можно попробать заюзать блоки

ivanych commented 8 years ago

Да, через секунда после отправки этого тикета я всё понял, и про блоки тоже:) Вопрос снят:)

melezhik commented 8 years ago

отлично!