1
我有一个代码块,将采取类似下面的文本块替换非HTML链接方法和以下正则表达式:与<A>标签
preg_replace_callback('/http:\/\/([,\%\w.\-_\/\?\=\+\&\~\#\$]+)/',
create_function(
'$matches',
'$url = $matches[1];
$anchorText = (strlen($url) > 35 ? substr($url, 0, 35).\'...\' : $url);
return \'<a href="http://\'. $url .\'">\'. $anchorText .\'</a>\';'),
$str);
将示例文本转换为如下形式:
示例文本示例文本< A HREF = “http://www.google.com”>http://www.google.com </A>示例文本
我现在的问题是,我们已经推出了丰富的文本编辑器可以在发送到脚本之前创建链接。我需要更新这段代码,以便它会忽略已经在标签内的任何URL。
你的第一个表达式匹配正确,以及刚刚返回$比赛[0]当$匹配[1]不为空,我可以解决这个问题很容易。但是你的第二个表达式返回:未知的修饰词“一” – tombazza 2010-01-26 12:59:26
对不起,我忘了斜线/中,以便将需要<\/a>否则它认为它是结束模式,一个是修改 – 2010-01-26 14:09:00