php 替换非a标签内的字符正则表达式
例如有一段html<ahref="www.baidu.com"title="大大世界">大世界</a>真的非常大,世界真大。我想替换世界这个词,正则:preg_repla...
例如有一段html
<a href="www.baidu.com" title="大大世界">大世界</a>真的非常大,世界真大。
我想替换世界这个词,
正则:
preg_replace('/'.$name.'/','<a href="'.$link.'">' . $name . '</a>', $html, 1),
这样优先会替换title里大大世界的世界两个字。
a标签中的title大大世界和锚文本大世界里都有世界两个字,用什么样的正则可以把这些排除呢?就只替换单独文本里的世界两个字。 展开
<a href="www.baidu.com" title="大大世界">大世界</a>真的非常大,世界真大。
我想替换世界这个词,
正则:
preg_replace('/'.$name.'/','<a href="'.$link.'">' . $name . '</a>', $html, 1),
这样优先会替换title里大大世界的世界两个字。
a标签中的title大大世界和锚文本大世界里都有世界两个字,用什么样的正则可以把这些排除呢?就只替换单独文本里的世界两个字。 展开
2个回答
展开全部
$subject="<a href='www.baidu.com' title='大大世界'>大世界</a>";
$pattern="/<a.*?>(.*?)<\/a>/is";
preg_match($pattern, $subject ,$arr);
然后你打印下$arr 你就能看到你要的了。这个数组下0是带标签的 1是忽略匹配的标签的
$pattern="/<a.*?>(.*?)<\/a>/is";
preg_match($pattern, $subject ,$arr);
然后你打印下$arr 你就能看到你要的了。这个数组下0是带标签的 1是忽略匹配的标签的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
preg_replace('/'.$name.'(?![^<>]*>)/','<a href="'.$link.'">' . $name . '</a>', $html, 1);
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询