Autor Zpráva
fimmos
Profil
mám takovouto fci:

function Odkazy($text)	{

// vytvoří odkazy
$text = mb_eregi_replace("(http://[^ ]+\.[^ ]+$)", " <a href=\"\\1\" target=\"_blank\">\\1</a>", $text);
$text = mb_eregi_replace("(^[0-9a-z]{2,4}\.[^ ]+\.[^ ]+$)", " <a href=\"http://\\1\" target=\"_blank\">\\1</a>", $text);
return $text;
}


když ji zavolám a mám nějaký text třeba www.neco.cz, tak to v phodě nagradí, ale jak mám např. toto je odkaz www.google.com a je super, tak to nenahradí, je mi to záhadou...
díky
Charlie
Profil
Nahrazuje vám to odkazy s http:// na začátku nebo obráceně? Z vašeho popisu jsem jelen :-)
Charlie
Profil
Myslím, že vám tohle nikdy nemůže fungovat. První replace vypadá dobře, ale druhý replace nahradí i url uvnitř každého již hotového odkazu z předchozího nahrazení.
fimmos
Profil
ano, to je sice pravda, už jsem to opravil... takže kdybych měl jen ten první řádek s mb_eregi_replace, tak když
$text = http://www.neco.cz
tak to v pohodě nahradí, ale jak zadám
$text = http://ww.neco.cz a nejaky dalsi text
tak to nenahradí... taky jsem z toho jelen ;-)
fimmos
Profil
oprava...
první:
$text = http://www.neco.cz[/pre]


$text = http://ww.neco.cz a nejaky dalsi text 
Charlie
Profil
Jak tak na to koukám, má to docela hodně háčků. Co kdybyste chtěl zkonvertovat třeba http://velmi.dlouha.url.adresa.example.com?
Charlie
Profil
Možná bych se kouknul na zdrojové kódy tohoto fóra, protože jak vidím, tak úspěšně formátuje vše. Nevýhoda je, že se to musí oddělit mezerou.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0