php – 替换文本中的单词忽略网址

我使用这一行来搜索带有url的文本名称.

$name = "xxx";
$text = "my name is xxx en my website is http://xxx.something.com";
$text = preg_replace("/\b(".preg_quote($name, "/").")\b/i", $url, $text);

如何更改此正则表达式以忽略文本中的网址

最佳答案 1)您可以使用正则表达式查找所有网址(例如,
http://snipplr.com/view/2371/regex-regular-expression-to-match-a-url/) – 记住它们的位置和长度

2)使用你的正则表达式找到一个单词的所有出现,并记住位置和长度

3)通过2)的结果并检查该单词是否不在URL中.

点赞