В этих ваших интернетах найдется немало примеров регулярных выражений (regexp) в The Bat. Но нет ни одного примера для реальной работы. Чаще всего для сложной сортировки почты является получение какого-то заголовка письма. И это как раз в «примерах» встречается очень редко. Читать далее
Архив метки: regexp
Выражения должны быть регулярными
Как и утренний стул. Так по крайней мере заявляет мой доктор.
Итак, время от времени нам (а говорю я про песочницу веб-программистов), приходится работать с регулярными выражениями. И если это не банальная проверка e-mail, шаблоны для которой есть уже во всех приличных библиотеках, а что-то посерьезней, то приходится изрядно повозиться.
Конечно если вы не знакомы с основами, то рекомендую прочитать пост который подготовил Archick о основах — регулярные выражения php.
А учитывая то что в последние пару недель я снова пиратствую, можете ожидать от меня интересных постов по теме.
Кстати по теме, ловлю себя на мысли что чаще всего использую группы символов с исключением, вида [^…]. Т.е. группа символов, включающая все символы кроме тех что указаны вместо троеточия.
Например вот это
/блаблабла ([^»]+) блаблабла/
в вольном переводе означает:
Боец, собери все отсюда и до забора первой кавычки и принеси сюда.
I, Parser. Как я пиратствовал. Я, Парсер
На днях увлеченно вспоминал опыт годичной давности по парсингу сайтов разработке информационных баз в сети Интернет. В общем пиратствовал.
На этот раз все прошло существенно быстрее и комфортнее.
Работа закончена и теперь я с чистой совестью и полными карманами, отдаю в хорошие руки набор пирата. Почти новый.
Набор включает:
1. Человека с прямыми руками и со знанием PHP и регулярных выражений.
2. Сервер или локальную машина с апачем+пхп+mysql, подключенную к безлимитному каналу.
3. Скрипт загрузки индекса необходимых страниц и скрипт загрузки самих страниц.
4. Парсер, вытаскивающий нужные данные из выкачанной кучи мусора.
5. Красивый шаблон для оформления результатов. Excel, xml, csv или html.
6. Ну и какой же пират, без попугая-матершинника и черной повязки на глаз.
В выборе железа — предпочтительнее локальная машина или выделенный сервер. У шаред хостингов — масса ограничений. Особенно у дешевых. Вешать это все дело на крон — занятие крайне неблагодарное. Проверено.
При загрузке данных все решается просто — через curl. Пока админы пьют пиво — качаем все в один поток, с одного IP, без refferer, с простым User agent. А пока они допьют — все ихнее золотишко уже у нас. Хе-хе.
Пункты 3 и 4 комбинируются по ситуации. Все скрипты можно объединить в один большой цикл с одновременной выкачкой-парсингом. Если база маленькая то лучше так и поступить.
Самое трудоемкое во всем этом — написать регулярное выражение и исправить в нем все ошибки. Дальше — дело техники.
И… соблюдайте копирайт! :)
Разбирая regexp
Меняю журнал кроссвордов и пять коробок пазлов на сборник регулярных выражений.
Разбивайте свои регулярные выражения на части.