<div><img src='/images/aa/a.gif'/>  <img src='/images/aa/b.gif'/> <img src='/images/aa/a.gif'/> 一些内容 <a href='http://www.jiajiao-edu.com/'>jiajiao</a>百度 谷歌 等等 </div>
想过滤掉相同图片,只保留一个
比如过滤后效果
<div><img src='/images/aa/a.gif'/>  <img src='/images/aa/b.gif'/>  一些内容 <a href='http://www.jiajiao-edu.com/'>jiajiao</a>百度 谷歌 等等 </div>如果谁能提供点正则教程地址更好了,哈哈

解决方案 »

  1.   

    var urls = new HashSet<string>();
    s_Test = Regex.Replace(s_Test, @"(?i)<img src='/[^/]+(?:/[^/]+?)*'/>", m =>
                           urls.Add(m.Value.ToUpperInvariant()) ? m.Value : String.Empty);
      

  2.   

     string str = File.ReadAllText("D:\\1.txt", Encoding.Default);
                str = Regex.Replace(str, @"(?is)<img(?=[^>]*?src=[""']([^""'\s]+)[""'\s])[^>]+>(?=.*?<img[^>]?src=[""']\1[""'\s])", "");
               
      

  3.   

    var imgs = $('img');
                for (var i = 0; i < imgs.length; i++) {
                    var href = $(imgs[i]).attr('src').toLowerCase();
                    for (var j = imgs.length - 1; j > i; j--) {
                        if (href == $(imgs[j]).attr('src').toLowerCase()) {
                            $(imgs[j]).remove();
                        }
                    }
                }