Про /m

| 1 комментарий

Бывает, что какой-то возможностью либо настолько редко пользуешься, либо она настолько неудобна, что про нее забываешь напрочь.

Сегодня меня заново познакомили (hsw++) с модификатором регулярных выражений /m.

В дизайне регулярных выражений Perl 5 есть аж пять метасимволов, совпадающие с границами строк (физических или логических):

^ $ \A \Z \z

И на все это наслаивается модификатор /m, изменяющий действие первых двух из списка. И, до кучи, пара символов для переноса строк (\n и \R). Полное безобразие. Иными словами, отказ от /m в Perl 6 — очень правильное решение.

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

1 комментарий

Для помнящих "Perl Best Practices" этот модификатор не такой уж и забытый - автор книги рекомендует использовать в каждом регэкспе /xms, а начало и конец строки обозначать символами \A и \z, забив на остальные.

Комментировать

Страницы

  • img

Об этой записи

Сообщение опубликовано 02.06.2010 22:53. Автор — ash.

Предыдущая запись — YAPC::Europe 2011 в Риге

Следующая запись — Хорошие новости про Perl Mova + YAPC::Russia

Смотрите новые записи на главной странице или загляните в архив, где есть ссылки на все сообщения.