php 正则匹配HTML标签以外的匹配词 并且不匹配A标签中的匹配词 10
例如:<p>沙发1号<ahref="#"alt="沙发2号">沙发3号</a></p>我想匹配沙发这个词语并替换掉,但只要替换沙发1号,其余的不要被匹配替换有哪位高手能写...
例如:
<p>沙发1号<a href="#" alt="沙发2号">沙发3号</a></p>
我想匹配 沙发 这个词语并替换掉,但只要替换 沙发1号 ,其余的不要被匹配替换 有哪位高手能写出个简短效率的正则来,不胜感激! 展开
<p>沙发1号<a href="#" alt="沙发2号">沙发3号</a></p>
我想匹配 沙发 这个词语并替换掉,但只要替换 沙发1号 ,其余的不要被匹配替换 有哪位高手能写出个简短效率的正则来,不胜感激! 展开
3个回答
展开全部
pattern : "#(<((?!a\b)[^>]*?>|(?!a)>)[^<]*?)(沙发)([^>]*?)#"
replace : '${1}haha${4}'
haha : 你想要替换的内容
replace : '${1}haha${4}'
haha : 你想要替换的内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
preg_replace('/<p>(.*?)<a/', '<p><a', $str);
追问
这只是一个例子 我希望能排除所有的HTML标签及A标签,就是所匹配的关键词不能在标签属性中,例如 也不能在关键词中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询