|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ivan Frolcov 2:5020/175.2 16 Feb 2001 15:16:15 To : Serge Shikov Subject : Re: Хитрая замена подстроки регекспом. -------------------------------------------------------------------------------- >> Hо его можно генерить, а не писать руками. SS> Hу если он будет генериться на основе скажем DTD - то сойдет. Впрочем я SS> чего-то сомневаюсь, что в этом случае он будет сколько нибудь SS> эффективен. А тогда за что боролись? All art is quite useless, как учит нас классик английской литературы :-) SS> P.S. И еще - приличный синтаксический анализатор для HTML должен жрать SS> неверно написанные файлы и не давиться, потому что их наверное 90% таких SS> в И-нете. А как эту фичу как в регексп встроить? Hу-у... на самом деле я не предлагаю это делать. Hо чует мое сердце, что из чего-то подобного можно сделать что-то пусть и маленькое, но вкусненькое, к HTML отношения, возможно, никакого не имеющее - из-за вычислений во второй части s/// мы получаем стек, т.е. способны разбирать не только регулярные грамматики. Hу вот типа проверки на баланс скобок: my($n); $n=0; $_="()"; eval { s/([()])/$n +=($1 eq '('?+1:-1); die if $n < 0 /gex; die if $n}; if ( $@ ){ print "Not balanced!"; }else{ print "Balanced!"; } в одну строчку, собственно говоря. --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/3300a342ffe5.html, оценка из 5, голосов 10
|