Убрать ссылки с помощью регулярного выражения

G2
На сайте с 12.01.2013
Offline
36
3358

Помогите пожалуйста, есть ссылки которые находятся вот таком виде:

<a target="_blank" href="http://www.mysite.ru/article/46/1002995816_kif_probl">Отчёт</a>

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

$content=preg_replace("#( |\n|^)(http://)?[0-9a-z_.-/]+?[^@][0-9a-z_.-/]+\.[a-z]{2,4}#is","",$content);

но без результатно, ссылки все равно остаются. Прошу вашей помощи для решения проблемы ?

bay_ebook
На сайте с 28.05.2010
Offline
111
#1
gigs2:
Помогите пожалуйста, есть ссылки которые находятся вот таком виде:
<a target="_blank" href="http://www.mysite.ru/article/46/1002995816_kif_probl">Отчёт</a>

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

$content=preg_replace("#( |\n|^)(http://)?[0-9a-z_.-/]+?[^@][0-9a-z_.-/]+\.[a-z]{2,4}#is","",$content);

но без результатно, ссылки все равно остаются. Прошу вашей помощи для решения проблемы ?

$content=preg_replace("/<a target\=\"_blank\" href\=\"(.*)\">/Uis","",$content);

ПС - навскидку, хз или будет работать.

Нужен прогер на php+mysql+понимание чужего кода? (/ru/forum/540660) Вам сюда PHP-шаман (http://php-shaman.pw/)
G2
На сайте с 12.01.2013
Offline
36
#2

не работает, но мне не нужно удалять <a target="_blank", мне нужно удалить только ссылку то есть это http://www.mysite.ru/article/46/1002995816_kif_probl в результате должно получится так:

<a target="_blank" href=" ">Отчёт</a>

то есть все атрибуты остались, а удалилась только ссылка

bay_ebook
На сайте с 28.05.2010
Offline
111
#3
gigs2:
не работает, но мне не нужно удалять <a target="_blank", мне нужно удалить только ссылку то есть это http://www.mysite.ru/article/46/1002995816_kif_probl в результате должно получится так:

<a target="_blank" href=" ">Отчёт</a>

то есть все атрибуты остались, а удалилась только ссылка

Да просто замену настройте, если первый вариант работает.

$content=preg_replace("/<a target\=\"_blank\" href\=\"(.*)\">/Uis","<a target=\"_blank\" href=\"\">",$content);
G2
На сайте с 12.01.2013
Offline
36
#4

не работает ссылка все равно остается

firstPR
На сайте с 24.02.2013
Offline
15
#5

<?

$content = "Текст до ссылки <a href='http://ssulka.ru/catalog'>Текст ссылки</a> текст после ссылки";

$content=preg_replace("/(<a [^>]*?href\s*=\s*[\"|']+?)[^\"']*?([\"|']+?[^>]*>)/si","\$1\$2",$content);

echo $content;

Точно работает, проверил.

G2
На сайте с 12.01.2013
Offline
36
#6

🍻Огромное спасибо firstPR, выручили в сложную минуту, все работает как вы и написали и bay_ebook тоже спасибо за поддержку.

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#7

Нафига такие сложности?!

$content = 'Текст до ссылки <a href="http://ssulka.ru/catalog">Текст ссылки</a> текст после ссылки';

$content=preg_replace('@href="(.*?)"@smi','href=""',$content);

echo $content;

всё.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
G2
На сайте с 12.01.2013
Offline
36
#8

LEOnidUKG спасибо, тоже работает

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий