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

判断一个词是否在文章内的超链接中出现
如题:string content="我是< a href='www.xxx.com'>中国人</a>,我爱祖国。"; 假设 字符串content 就是文章的内容。
要给 “中国” 这个词加上一个超链接,但是不能重复出现在文章中含有“中国”这个词的超链接 ,如题,中国 就不能再次添加连接了,因为 中国人 已经是超链接了 中国 这个词 包含在里面, 这个用正则 怎么实现 。

------解决方案--------------------
C# code

void Main()
{
    string content="我是<a href='www.xxx.com'>中国人</a>,我爱中国。"; 
    string key="中国";
    content=Regex.Replace(content,"(?<!<a\\b[^>]*?>)"+key,"<a href='www.xxx.com'>$0</a>");
    Console.WriteLine(content);
    //我是<a href='www.xxx.com'>中国人</a>,我爱<a href='www.xxx.com'>中国</a>。
}

------解决方案--------------------
(?<!<a\b[^>]*?>)中国(?!.*</a>)
------解决方案--------------------
强大的正则哈,楼上的牛人哦。。正则是一门高深的学问哈。。用得少哦。。值得学习