日期:2014-05-17  浏览次数:20560 次

求助用正则关键词替换时 不替换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[^>]+>|$)