Намиране на линкове и зитриване?

novakabg

Registered
Привет, приятели!

Има ли вариат да направя заявка която да издири къде има линкове и да бъдат премахнати със текста.

Примерен мой код:

Код:
SELECT
CONCAT(
    SUBSTR(description,1,
    INSTR(description,'<a href=')-1)
,
    SUBSTR(description,
    INSTR(description,'</a>')+4)
)
FROM db_description;


Пример за какво се пробвам да изтрият:

<a href="#">Текст</a>
<a href="#">Прекрасен Текст</a>

Всеки път е динамичен, има ли нещо като regex като <а *> да премахне линковете?

Благодаря за отделеното време :)
 
Остава само да си ги обходиш и да ги промениш на това, което искаш :).
Код:
<?php
$str= "Test text <a href='https://web-tourist.net'>test</a>  <a href='https://web-tourist.net'>test</a>";
preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[-A-Z0-9+&@#\/%=~_|$?!:,.]*[A-Z0-9+&@#\/%=~_|$]/i', $str, $result, PREG_PATTERN_ORDER);
print_r($result[0]);
 
topchokt каза:
Остава само да си ги обходиш и да ги промениш на това, което искаш :).
Код:
<?php
$str= "Test text <a href='https://web-tourist.net'>test</a>  <a href='https://web-tourist.net'>test</a>";
preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[-A-Z0-9+&@#\/%=~_|$?!:,.]*[A-Z0-9+&@#\/%=~_|$]/i', $str, $result, PREG_PATTERN_ORDER);
print_r($result[0]);
Never use regex to parse html
 
Благодаря много за отговорите, но ми трябва заявка :) само заявка.
Благодаря предварително! :)
 
novakabg каза:
Благодаря много за отговорите, но ми трябва заявка :) само заявка.
Благодаря предварително! :)
Ти заявката си я имаш.
select id, text from table

a topchokt ти показа как за всеки запис да провериш дали има линк вътре. Т.е. ще изпълниш неговия код за всеки ред, върнат от заявката.
 

Горе