首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

用正则关键词替换时 不替换A标记中的内容

2012-04-21 
求助用正则关键词替换时 不替换A标记中的内容?HTML codea href#测试/a俺吧拉萨看来大家阿司法局刷

求助用正则关键词替换时 不替换A标记中的内容?

HTML code
<a href="#">测试</a>俺吧拉萨看来大家阿司法局刷卡机放<a href="#">测试一下</a>得开疯测试狂的萨克龙卷风看到<a href="#">测试</a>测试放得开松垮垮发静测试看思渡口开测试始 倒萨


替换掉 测试 二字为一个链接如:<a href="#">替换</a> 但 已经在A标记中的 测试 不进行替换

弄了好久都无法实现。求思路

[解决办法]
能实现
1.(?<=^|</a>)(?:(?!<a[^>]+>).)+(<a[^>]+>|$)
匹配得到<a..></a>以外的部分
2.将这结果中的 测试 替换为你要的内容

如果不支持(?<=)的前向断言,则修改为
(^|</a>)(?:(?!<a[^>]+>).)+(<a[^>]+>|$)

热点排行