Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: кавычки в ссылках
 
 автор: sidPR   (17.10.2007 в 13:28)   письмо автору
 
 


$text = preg_match_all("#<a.*href=\'".$link."([^<]+)\'>([^<]+)</a>#is", $text, $regs);

Что еще необдимо в этой регулярке чтобы она искала всевозможные ссылки
<a href='ссылка'>тест</a>
<a href="ссылка">тест</a>
<a href=ссылка>тест</a>
<a все что угодно.. href="ссылка">тест</a>
и прочее

   
 
 автор: SHAman   (17.10.2007 в 13:34)   письмо автору
 
   для: sidPR   (17.10.2007 в 13:28)
 


$text = preg_match_all("#<a.*?href=('\")?".$link."\\1.*?>(.+?)</a>#is", $text, $regs); 


Не проверял, но смысл, думаю, понятен.

   
 
 автор: sidPR   (17.10.2007 в 13:57)   письмо автору
 
   для: SHAman   (17.10.2007 в 13:34)
 

не чет ничего не понятно :( и ничего не работает... можно как для дебила?

   
 
 автор: cheops   (17.10.2007 в 14:24)   письмо автору
 
   для: sidPR   (17.10.2007 в 13:28)
 

Вырезайте прямо с кавычками, а потом удаляйте их из результата при помощи функции trim().

   
 
 автор: sidPR   (17.10.2007 в 15:31)   письмо автору
 
   для: cheops   (17.10.2007 в 14:24)
 

можно пример регулярки которая подойдет под все типы и оформления <A>

   
 
 автор: Саня   (18.10.2007 в 10:42)   письмо автору
 
   для: sidPR   (17.10.2007 в 13:28)
 

<?php
$data 
"<a href='ссылка'>тест</a>
<a href=\"ссылка\">тест</a>
<a href=ссылка>тест</a>
<a все что угодно.. href=\"ссылка\">тест</a>
<a name=\"blah\" href=http://www.www.www>www.www.www</a>"
;

preg_match_all("!<a.*href=('[^']+'|\"[^\"]+\"|[^>]+)>(.+)</a>!isU"$data$m);
for ( 
$i 0$i count($m[1]); $m[1][$i] = trim($m[1][$i], "'\" "), $i++ );
print_r($m);

   
 
 автор: sidPR   (31.10.2007 в 13:20)   письмо автору
 
   для: Саня   (18.10.2007 в 10:42)
 

а есть какаянибуть может уже написанная давно регулярка ... которая проверяет на любой из заданных страниц наличие ссылки вида:

<a(теги на регистр пофигу) href=http://domain></a>
<a(теги на регистр пофигу) href=domain></a>


Все возможные варианты ссылок чтобы обрабатывало?
будь там <A <a <a tegi href='' tegi>adf</a> Универсальная

   
 
 автор: EXP   (31.10.2007 в 14:34)   письмо автору
 
   для: sidPR   (31.10.2007 в 13:20)
 

я таким пользуюсь
<?
preg_match_all

"#(?:\<a [^\>]*href\=)\"?\'?([^ \>\"\']+)\"?\'?[^ \>]*\>(.*?)\<\/a\>#si",  
$text$out ); 

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования