parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 13.06.2013 07:58

я был не прав, когда писал, что в текущем релизе для опции match_limit используется значение 10K вместо 10M.
такое изменение мы действительно делали в какой-то из бэта версий, но откатили его до релиза и в релизе оно 10M (default).

упомянутая в этом сообщении значение 10K в скрипте buildall относится к другой опции: with-match-limit-recursion (я писал про опцию with-match-limit). за подробностями в http://pcre.org/pcre.txt.

что касается проблемы: она с очень неоптимальном регулярном выражении, а конкретнее в этих его частях:
\w+([.-]?\w+)+
\w+([.-]?\w+)*
опи приводят к бешеному количеству "откатов".
если убрать символы '?' (которые в данном месте абсолютно лишние), то проблема решается и регулярное выражение становится гораздо оптимальнее.