--- twikifilter.module-current 2009-04-29 19:40:39.000000000 -0400 +++ twikifilter.module 2009-04-29 21:00:34.000000000 -0400 @@ -323,11 +323,13 @@ $urlregex = "[A-Za-z0-9\.\,\%\/\+\:\=\?\-\_]+"; $mailregex = "[A-Za-z0-9\-\_.\@]+"; $wwregex = "([A-Z][A-Za-z0-9]+[.])?([A-Z]+[a-z\d]+[A-Z]+[A-Za-z\d]+|[A-Z][A-Z]+[a-z\d]+)"; - $htmlregex = "<.*>\S+<\/\S+>"; + $htmlregex = "<[^>]+>\S*<\/\S+>"; + $htmlsingletonregex = "<[^>]+\/>"; + $pathregex = "(\/[\w\-]+)+\/?"; $i = 0; - $x = preg_match_all("/(\[\[\S+\]\[\S+\]\])|(http\:\/\/($urlregex)|mailto\:($urlregex)|https\:\/\/($urlregex)|www\.($urlregex))|($htmlregex)/",$text,$urls); - $prep = preg_replace("/(\[\[\S+\]\[\S+\]\])|(http\:\/\/($urlregex)|mailto\:($urlregx)|https\:\/\/($urlregex)|www\.($urlregex))|($htmlregex)/","%URL%",$text); + $x = preg_match_all("/(\[\[\S+\]\[\S+\]\])|($htmlregex)|($htmlsingletonregex)|(http\:\/\/($urlregex)|mailto\:($urlregex)|https\:\/\/($urlregex)|www\.($urlregex))|($pathregex)/",$text,$urls); + $prep = preg_replace("/(\[\[\S+\]\[\S+\]\])|($htmlregex)|($htmlsingletonregex)|(http\:\/\/($urlregex)|mailto\:($urlregex)|https\:\/\/($urlregex)|www\.($urlregex))|($pathregex)/","%URL%",$text); $prep = preg_replace("/$wwregex/","% $1$2",$prep);