Сегодня займемся парсингом html-страниц. Я хочу показать, как при помощи Perl можно легко и быстро разобрать страницу, найти на ней частовстречающиеся слова (посчитав их количество) и получить интересную статистику о любой странице в интернете. Кроме того, предлагаю уделить внимание словам, находящимся в тексте заголовков.
В этой статье расскажу о моем методе решения этой задачи и продемонстрирую готовый рабочий код, который разбирает страничку и выводит частовстречающиеся слова, отсортированными по количеству вхождений в текст.
В последнее время новичков в Perl мало. Люди не хотят изучать его, потому что сейчас существуют языки, которые значительно проще в изучении. Например, вездесущий php. Но не будем устривать холивар, а остановимся на сути.
Perl имеет некоторые особенности, которые придают ему индивидуальность. Однако, новички часто не замечают этих особенностей. Кроме того, язык Perl более низкоуровневый и гибкий, чем тот же php. Поэтому возникают некоторые проблемы, связанные с понижением уровня при переходе от php к Perl. Какие же ошибки совершают начинающие Perl-хакеры? Одинаковые. Все наступают на одни и те же грабли. Чтобы этих граблей было меньше, я описал и их, и противограблиные методы кодирования. Вот что у меня получилось.
Как вы определяете, четное число или нет? Есть много способов, но всегда хочется пользоваться самым эффективным. Мой преподаватель показал один интересный способ, который я решил испытать в данной статье.
Кроме того, хотелось бы проверить данный способ и эффективность алгоритмов, при использовании Perl и PHP.
В BB-code есть несколько тегов, которые очень капризны, потому что могут быть написаны по-разному. Один из них - тег [url]ссылка[/url]. Попробуем разобраться с ним двумя способами и, конечно, проверим, какой быстрее.
Займемся парсингом bb-code вплотную.
Сейчас все работают с базами данных. И это, наверное, правильно. Однако, иногда, все-же приходится работать и со старыми добрыми плоскими файлами. Мы можем их открывать, закрывать, писать в них что-то, читать из них, а так же... блокировать. О блокировке файлов я сейчас и хочу поговорить.
В процессе программирования, перед программистом встают задачи, которые можно решать разными методами. Регулярные выражения - это миниязык, предназначенный для решения части этих задач. Причем, часть эта довольна увесистая. Недаром язык регулярных выражений в том виде, в котором он распространен больше всего, вышел из Perl и был настолько тесно с ним интегрирован, что некоторые считают его полноценной частью.
Однако, язык регулярных выражений настолько необычен, насколько полезен. Его изучение дается нелегко, но усилия оправдываются. Эта статья посвящена регулярным выражениям. В ней нет ни самоучителя, ни перечисления бестий регулярных выражений, лишь некоторые рассуждения и бонус - несколько RegExp-ов, выполняющих частовстречающиеся задачи.