php - 替换文本中的单词忽略 url

标签 php regex replace preg-replace

我使用这一行在带有 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);

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

最佳答案

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

2) 使用您的正则表达式查找单词的所有出现并记住位置和长度

3) 遍历 2) 的结果并检查该词是否不在 url 中。

关于php - 替换文本中的单词忽略 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3100313/

相关文章:

php - XML 和 INI 哪个更快?

php - php.ini 中的重复指令是否会导致问题?

c# - 使用正则表达式通过替换进行模式查找

regex - D:用逗号分割字符串,但不带引号的字符串

php - 在单元测试中动态设置 Yii Controller

php - PHP 的 Heroku 内存错误和从 S3 读取大文件

php - 数据库中的冒号分隔值

javascript - JS - 删除数组中所有字符串开头和结尾的可选/潜在引号

c# - 替换 C# 读取的 CSV 文件中的所有空值

javascript - jQuery 搜索和替换不起作用(Wordpress)