正则表达式,替换字符,但是如果字符是超链接里面的话不替换
$string = preg_replace("#".preg_quote($word)."#", $a, $b, 2);
<a href="">我是中国人</a>,伟大的中国人。
把 中国 替换成 天朝 。
程序执行之后 就成了 <a href="">我是天朝人</a>,伟大的天朝人。
但是 第一个中国人是在超链接里面的,我不需要替换掉。
正则怎么写呢?
$string = preg_replace("#正则完善".preg_quote($word)."#", $a, $b, 2);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
解析 -> 重组 -> 构造
可以试试前向后向的预查
替换是个思路 怎么替换 之后怎么替换回来呢
@kalso@qq.com 比如把链接里的中国替换成[XX],然后替换正常要替换的中国,后面再把[XX]替换回中国....就是普通的正则替换...只是用了3次而已...
正则不熟。想到一个土方法。先把超链接里面能匹配的字符替换成其他标示性的字符,后面再替换回来。