正文  电脑教程 > 服务器教程 >

C#正则过滤HTML标签并保留指定标签

本文实例讲述了C#正则过滤HTML标签并保留指定标签的方法。分享给大家供大家参考,具体如下: 这边主要看到一个过滤的功能: public stati...

本文实例讲述了C#正则过滤HTML标签并保留指定标签的方法。分享给大家供大家参考,具体如下:

这边主要看到一个过滤的功能:

public static string FilterHtmlTag(string s)
{
 //<...>标记正则表达式
 return Regex.Replace(s, @"<[^>]*>", delegate(Match match)
 {
  string v = match.ToString();
  //图片,<p>,<br>正则表达式
  Regex rx = new Regex(@"^<(p|br|img.*)>$",
   RegexOptions.Compiled | RegexOptions.IgnoreCase); //
  if (rx.IsMatch(v))
  {
  return v; //保留图片,<p>,<br>
  }
  else
  {
  return ""; //过滤掉
  }
 });
}

我这边所有都过滤,所以我直接用正则,不再做匿名委托的保留p和br

content = Regex.Replace(content, @"/<span(sclass=S*)*>S*</span>/g", "", RegexOptions.IgnoreCase);
content = Regex.Replace(content, @"<[^>]*>", "", RegexOptions.IgnoreCase);
content = content + "。。。";