Autor Zpráva
grimword
Profil
Ahojte,
v MySQL mám uložené zdrojové kódy. Třeba jako celý tento thread. Všechny DIVy, P, strongy, odkazy.... . Prostě komplet HTML stránky.

Při výpisu bych ten text potřeboval prohnat nějakým scriptem, který by odstranil <a href> tagy, pokud míří na konkrétní stránku, třeba google.cz. Ale odkazované slovo bylo zachováno.

Takže tam nechat odkazy, pokud tam budou třeba v href="":
djpw.cz/diskuse/
idnes.cz/clanek-cislo-1234/
novinky.cz/podstranka/

Ale smazat TAG <a href>, pokud tam bude:
google.cz/vyhledej/
google.cz/nastaveni/
google.cz/query/bla-bla-bla/

Poradí někdo prosím?
Joker
Profil
str_replace
grimword
Profil
Ano, str_replace znám a vím, že bude potřeba.:) Ale skládáním té vnitřní struktury a podmínkám nehovím. Opravdu kdybych uměl a věděl jak to udělat, tak by bylo pro mě jednodušší si to napsat, než to složitě řešit přes fórum. Ale to ale vážně neumím.
Joker
Profil
No, tak konkrétní odkaz:
str_replace('<a href="http://google.com">Google</a>', "", $kod);

Jakýkoliv odkaz, který má v href adresu http://google.com:
preg_replace('#<a href="http://google.com"[^>]*>.*?</a>#', "", $kod);
grimword
Profil
>>> ten druhý způsob funguje

Děkuji, funguje přesně jak jsem chtěl. Akorát - nešlo by nějak zachránit ten text odkazu (odkazující slovo)?
Someone
Profil
preg_replace('#<a href="ht'.'tp://google.com"[^>]*>(.*?)</'.'a>#', "$1", $kod);
grimword
Profil
Výborné! Jste borci. Mockrát díky, vyřešeno přesně jak jsem potřeboval.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: