помогите с регуляркой под перл: Code: <a class="tiny" href="/admin/stop.html">stop.html</td><td bgcolor=red width="800"> <a class="tiny" href="/admin/start.php">start.php</td><td bgcolor=red width="800"> Нужно вытащить: stop.html start.php пытаюсь: Code: <a class=\"tiny\" href=\"\/admin\/([^\s]+(?=\.(html|php))\.\2)\"> выводит: Code: stop.html html start.php php
а зачем расширения заносишь в подмаску? Лучше уже в символьный класс: <a class=\"tiny\" href=\"\/admin\/([^\s]+(?=\.[html|php])\.\2)\">
ph1l1ster ну с перлом я не дружу, но вариантов регулярок тонна. Вот хотя бы две: Code: '#href="/admin/([^"]*)"#' Code: '#>([^<>]*)</#' PaCo Зачем в шаблон вносить данные которые совсем не нужны? (Хотя конечно зависит от конкретного случая, но всё же)
есть записаь типа как на выходе получить title:body ? при условии что это встречается не один раз в тексте... снимаю вопрос.. допетрил сам)) протсо заменил не ннужные знаки preg_replace'ом )
В догонку) Если без реплейса PHP: preg_match_all('#<td>([^<>]*)</td>#', $str, $out); echo join('', $out[1]);
вот имеется регулярка для замены кликабельных ссылок PHP: preg_replace('~<a.*href="([^"]+)".*>.*</a>~Usi','$1',$row['full_news']); пример: --> но она работает некоректно с highslid'ом (увеличение картинки при нажатии) вот пример кода: и получаю вот что вот и собственно вопрос.. как доработать регулярку что бы не было такого?.. --------------------- и еще хотел спросить - как добавить поддержку исключение для замены для хоста - site.ru (т.е мой хост не ссылающийся на внешние ресурсы.) спасибо. ------------------- и накидать похожую регулярку только оставлять ссылки как есть и добавлять rel="nofollow" и ноиндекс (пример тут http://sapehelp.ru/tools/noindex-generator/) с меня как обычно много +сов
#Wolf# По первому - как вариант: PHP: <a.*href="([^"]+)".*>.{3,}</a> т.е. если между тэгами "a" меньше 3 символов, то не заменять Насчет ноиндекс - уже отвечали вроде: https://forum.antichat.ru/showpost.php?p=1057786&postcount=7837
вобще вырезало все от первой картинки(с highslide) до последней ссылки от <a и до самого последнего </a>
короче нефига не понял, но вот: PHP: <pre> <?php $in = <<<HTML <a href="http://www.site.ru/polnoy_izobrajenie.jpg" onClick="return hs.expand(this)" ><img src="http://www.site.ru/umenshennoe_izobrajenie.jpg" style="border: none;" alt='alt alt alt' title='test test ' /></a> HTML; preg_match ('|<a href="(.*)".*>.*</a>|Ui',$in,$rez); print_r ($rez); echo preg_replace ('|<a href="(.*)".*>.*</a>|Ui','$1' ,$in); ?> </pre>
#Wolf# Как то так PHP: $in = <<<HTML <a href="http://www.site.ru/polnoy_izobrajenie.jpg" onClick="return hs.expand(this)" ><img src="http://www.site.ru/umenshennoe_izobrajenie.jpg" style="border: none;" alt='alt alt alt' title='test test ' /></a> HTML; echo preg_replace('~<a.*href="([^"]+)"(?(?!expand)[\s\S])*?>.*?</a>~si','$1',$in);
PHP: <?php $in = '<a id="ct_gv_ct_NAME" href="Default.aspx?action=go&PGIndex%3d0%26WPGOrderBy%3d ">link_name</a>'; preg_match_all('|a id=.*href="(.*)">.*</a>|Ui',$in,$rez); print_r($rez); ?>