C#、JS利用正则表达式清理HTML标记一例

有些时候,我们对一些内容,清理掉HTML标记,只保留纯内容或一部分内容,例如下面的一段:

<SPAN class  =  InsertWordsDisplay>这里不要</span>只要这里<SPAN class=\"InsertWordsDisplay\">不要(*)</span>

对上面的这段代码,我们只要蓝色的内容,也就是“凡是被HTML标记包围的内容,都不要了

C# 的实现方式:

string strToBeFiltered = "<SPAN class  =  InsertWordsDisplay>这里不要</span>只要这里<SPAN class=\"InsertWordsDisplay\">不要(*)</span>";
Regex reg = new Regex("<span\\s+class\\s{0,}=\\s{0,}\"{0,1}InsertWordsDisplay\"{0,1}>.+?</span>", RegexOptions.IgnoreCase | RegexOptions.Multiline);
string strFiltered = reg.Replace(strToBeFiltered, "");

上面的 strFiltered 就是最终的结果了

 

Javascript 的实现方式:

<script type="text/javascript">
    var strToBeFiltered = '<SPAN class  =  InsertWordsDisplay>不要</span>要<SPAN class="InsertWordsDisplay">不要(*)</span>';
    var pattern = /<span\s+class\s{0,}=\s{0,}"{0,1}InsertWordsDisplay"{0,1}\s{0,}>.+?<\/span>/ig;
    var strFiltered = strToBeFiltered.replace(pattern, '');
    alert(strFiltered);
</script>

希望起个抛砖引玉的作用吧

posted @ 2009-02-13 16:40  三角猫  阅读(539)  评论(0)    收藏  举报