Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.UNIX.BSD
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.UNIX.BSD с датами от 18 Jan 11 22:51:00 до 18 Jan 24 18:16:22, всего сообщений: 10753
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 9117 из 10753 ===================================== RU.UNIX.BSD =
От   : Eugene Grosbein                  2:5006/1           10 Jul 19 03:07:21
Кому : Victor Sudakov                                      10 Jul 19 03:07:21
Тема : Re: pcre multiline
FGHI : area://RU.UNIX.BSD?msgid=grosbein.net+81c5e4aa
На   : area://RU.UNIX.BSD?msgid=2:5005/49+5d24c120
= Кодировка сообщения определена как: IBM866 =================================
Ответ: area://RU.UNIX.BSD?msgid=2:5005/49+5d276505
==============================================================================
09 июля 2019, вторник, в 23:25 NOVT, Victor Sudakov написал(а):

VS>>> Почему модификатор s не работает в нижеприведенном примере? Разве
VS>>> не должен конец строки попадать под "."? $ pcretest
VS>>> ~/tmp/koshka.txt PCRE version 8.43 2019-02-23 /koshka.*sobaka/s
VS>>> koshka1 No match koshka2 No match sobaka No match koshka No match
VS>>> koshka33
VS>>> No match
EG>> Читаем man pcretest:
EG>>        Each data line is matched separately and independently. If you
EG>> want to
EG>>        do multi-line matches, you have to use the \n escape sequence
EG>> (or \r or
EG>>        \r\n, etc., depending on the newline setting) in a single line
EG>> of input
EG>>        to encode the newline sequences. There is no limit on the
VS> 1. Опция (?s) включает режим dotall:
VS> .          any character except newline; in dotall mode, any character
VS> whatsoever

Hо применяет pcretest это к each data line, то есть только к каждой
строке файла *по отдельности*.

VS> 2. Почему на https://regex101.com/ работает именно так, как я ожидаю (при
VS> наличии /s токен "." означает в том числе newline),

Потому что так и должно быть.

VS> а в pcretest нет?

Потому что и тут так и должно быть, в соответстиве с маном.

Ты ожидаешь одинаковое поведение от разного софта,
когда у pcretest явным образом декларировано другое поведение.

Eugene
--- slrn/1.0.3 (FreeBSD)
* Origin: RDTC JSC (2:5006/1@fidonet)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.072275 секунды