Помогите, пожалуйста. в PHP пока не очень, в регулярках очень не очень . в общем есть такой код: Код (Text): $dt[4]=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/~%#]*(\\?[[:alnum:]?+&_=/%#]*)?)?)", "<a href='\\1'>\\1</a>", $dt[4]); который адреса вида http://a.a делает ссылками... в общем, нужно сделать так, чтобы если уже адрес сделан обычным тегом, то ничего не трогать. например, в переменной уже записано Код (Text): бла бла бла <a href="http://photofile.ru/dfgdfg/4.jpg"><img src="http://photofile.ru/dfgdfg/8.jpg"></a> . Нужно сделать, чтобы если уже есть Код (Text): <a href=" или Код (Text): <img src=" , то вставлять ссылку не нужно. очень прошу помочь... :roll:
PHP: <?php $str = '<a href="http://site.com">link</a> [url=http://site.com]http://site.com[/url] text <a href=\'http://site.com\'>link</a> [url=http://site.com]http://site.com[/url] text'; $regex = '~(?<!ref="|src=")(ht|f)tps?://[\w%#\~:;&=+,./?-]+~is'; $replace = '<a href="\\0">\\0</a>'; print preg_replace($regex, $replace, $str); ?>