Frågan#1
Jag har nu fått tag på ett helt OK script för att konvertera URLs till hyperlänkar:
function urltext($str) {
$str = ereg_replace("((www.)([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@:%_~#\?&/]))", "http://\\1", $str);
$str = ereg_replace("((ftp://|http://|https://){2})([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@:%_~#\?&/])", "http://\\3", $str);
$str = ereg_replace("(((ftp://|http://|https://){1})[a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@:%_~#\?&/])", "<A HREF=\"\\1\" TARGET=\"_blank\">\\1</A>", $str);
$str = ereg_replace("([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})","[<A HREF=\"mailto:\\1\">\\1</A>]", $str);
return stripslashes($str);
}
Problemet är att även <a href="URL">länktext</a> konverteras och visas felaktigt. Min idé var då att kolla om strängen som ska konverteras föregås av ett citationstecken " eller ett lika med-tecken =, och om så är fallet inte konvertera.
Hur går jag till väga? Har för mig att man lägger till nåt i stil med ^\" för att säga "inte citattecken", men jag är allt för färsk på RegExp för att komma någon vart.
------------------
/ jeps0