Регулярка: Код: ^https?:\/\/([^\/]+) Режет урл ссылки до домена. Было: http://site.com/cat/page.html Стало: site.com
Это лучше делать через конструктор результатов, там есть встроенный функционал по выделению домена - Extract Domain, подробнее тут: http://a-parser.com/threads/965/
Поиск титла на странице Код: <title>([^<>]*)</title> Флаги: is Поиск e-mail'ов Код: \b([-a-z0-9._%+]+@[a-z0-9.-]+\.[a-z]{2,6})\b Флаги: ig
Всем привет. Как известно, многие при покупает а-парсер-а, часто сталкиваются с проблемой с составлением регулярных выражений, и часто заебывают нашего любимого Форбиддена, чем отвлекают его от великих дел. Так вот мое предложение такое: сделать дополнительное окошко для тестирования регулярных выражений, где будут все флаги и автоматическая составлялка регулярок с помощью, как в зеннопостере. Например: закинули исходник страницы, выделии кусок текста - признаки+то что надо, выделили нужную часть что надо, нажали кнопку(что надо спарсить), выделили динамические части тоже обозначили, и на выходе мы получили работающую регулярку, нажали кнопку тест, сбоку выдался результат. «И волки сыты и овцы целы и пастуху вечная память»
это больше подходит к парсеру через XPath, который в будущем скоро так же будет по поводу проверки регулярок - без ручного составления в любом случае не обойтись, т.е. лучше всего брать исходник и закидывать в сервис на подобии
А кто бы помог, составить регулярку по парсингу полных предложений. Должна быть такая примерно. больше 4 пробелов, больше 100 символов, без спец симвоволов, оканчивается на точку, после точки пробел. Сколько не пытался более мение рабочий вариант не получился, не разбираюсь в регулярках))) Смысл спарсить много тематических предложений не затачивая под каждый рес =)
Вот по твоему алгоритму, только без пробела в конце, имхо это не важно: Код: (\b[A-ZА-Я](?:\w+[,;:]? ){3,}\w{2,}[.!?])
Смотрю что то народ стесняется выкладывать регулярки... выкладываю что есть прошу не пиннать сильно а по возможности исправить и показать. "Мобильные номера(Россия)","+0123456789","(8|\+[ )(a-z></-]{0,8}7|7){1}[ )(a-z></-]{0,8}[9]{1}\d{2}[ )(a-z></-]{0,8}\d{3}([ )(a-z></-]{0,8}\d{2}){2}" "Мобильные номера(Украина)","+0123456789","(?:8|38|\+38|){1}[ )(a-z></-]{0,6}(?:050|063|066|067|068|091|092|093|094|095|096|097|098|099){1}[ )(a-z></-]{0,6}\d{3}[ )(a-z></-]{0,6}\d{2}[ )(a-z></-]{0,6}\d{2}" "Мобильные номера(Белорусия)","+0123456789","(?:75|375|\+375|){1}[ )(a-z></-]{0,6}(?:25|29|33|44){1}[ )(a-z></-]{0,6}\d{3}[ )(a-z></-]{0,6}\d{2}[ )(a-z></-]{0,6}\d{2}" "Мобильные номера(Казахстан)","+0123456789","(?:8|7|\+[ )(a-z></-]{0,6}7){1}[ )(a-z></-]{0,6}(701|700|702|777|705|775|707){1}[ )(a-z></-]{0,6}\d{3}([ )(a-z></-]{0,6}\d{2}){2}" "Номера Билайн","+0123456789","(?:8|\+[ )(a-z></-]{0,6}7){1}[ )(a-z></-]{0,6}[9]{1}(?:01|02|03|05|06|08|09|60|61|62|63|64|65|67|68){1}[ )(a-z></-]{0,6}\d{3}([ )(a-z></-]{0,6}\d{2}){2}" "Номера MTC","+0123456789","(?:8|\+[ )(a-z></-]{0,6}7){1}[ )(a-z></-]{0,6}[9]{1}(?:88|17|89|10|11|12|13|14|15|16|17|18|19|80|81|82|83|84|85|87){1}[ )(a-z></-]{0,6}\d{3}([ )(a-z></-]{0,6}\d{2}){2}" "Номера Meгафон","+0123456789","(?:8|\+[ )(a-z></-]{0,6}7){1}[ )(a-z></-]{0,6}[9]{1}(?:26|25|21|31|20|22|23|24|27|28|37|29|30|32|38|33){1}[ )(a-z></-]{0,6}\d{3}([ )(a-z></-]{0,6}\d{2}){2}" "Номера Теле2","+0123456789","(?:8|\+[ )(a-z></-]{0,6}7){1}[ )(a-z></-]{0,6}[9]{1}(?:02|04|08|50|51|52|53){1}[ )(a-z></-]{0,6}\d{3}([ )(a-z></-]{0,6}\d{2}){2}" "Proxy","","([0-9]|[0-9][0-9]|[01][0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[0-9][0-9]|[01][0-9][0-9]|2[0-4][0-9]|25[0-5])){3}:\d{2,5}" "Email","","([A-Za-z0-9_\.\-]{1,20})@([A-Za-z0-9\.\-]{1,20})\.([A-Za-z]{2,4})" "Email (Казахстан)","","([A-Za-z0-9_\.\-]{1,20})@([A-Za-z0-9\.\-]{1,20})\.kz" "Email (только с домена ссылки)","","([A-Za-z0-9_\.\-]{1,20})@%DOMEN%" "Email [AT]mode","","([A-Za-z0-9_\.\-]{1,20})[ \-_\(\[\{]{1,2}(@|AT|at|the-at-symb)[ \-_\)\]\}]{1,2}([A-Za-z0-9_\.\-]{1,20})[ ]?(\.|(dot)|_._)([ ]?[A-Za-z]{2,4})" "bull_id","0123456789","\{.bull_id.\:.\d*.\}" "ucoz","","http\:\/\/[a-z0-9_\-.]*(ucoz.ru|ucoz.com|ucoz.net|ucoz.org|ucoz.de|ucoz.ua|ucoz.co.uk|ucoz.lv|at.ua|3dn.ru|my1.ru|clan.su|moy.su|do.am|ucoz.es|ucoz.hu|ucoz.ae|ucoz.ro)\/forum\/" "Сайты ua","","http\:\/\/[a-z0-9_\-.]*\.ua[a-z0-9_\-.]*" "ICQ","0123456789","(ICQ|аськ|ася|айсикью|стучать|стукни)[^0-9]{0,3}[0-9]{4,9}" "icq antichat в профилях","0123456789","\">[0-9]{4,9}<\/a><\/td>" "Skype","","(Skype|скайп)[ :-]{1,2}[a-z0-9]+" "Ссылки","","http\:\/\/[a-z0-9_\-.]*\.[a-z0-9_\-.]*" "Mastercard & Visa","","^[4|5]\d{3}(\s|-)?\d{4}(\s|-)?\d{4}(\s|-)?\d{4}$"
Есть классная книга - Бен Форта - Регулярные выражения. 10 минут на урок. Там где то 200 страниц. Все очень доступно объясняется, я сам по этой книге учился составлять регуляки. За неделю уже сами научитесь составлять. Рекомендую, для новичков самое то. А если кто уже имеет опыт, и хочет его усовершенствовать то есть еще одна книга от гуру по регуляркам (не рекомендую новичкам т.к. сложно по началу без общих понятий) Дж.Фридл - Регулярные выражения
Есть строки вида: <link rel="pingback" href="(.*?)" /> <link rel="pingback" href="(.*?)"/> <link rel="pingback" href="(.*?)" > <link rel="pingback" href="(.*?)"> Как можно объединить регуляркой эти строки в один запрос? Парсер чекает список URL'ов на наличие строки в коде страницы и откладывает урл в результат (использую NET::HTTP). Тоесть, нужно чтобы собирались все URL'ы в независиомсти от окончания " />,/>, >,>" и др.