C#将html代码转换成文本代码

 1 /// <summary>
 2     /// 去除HTML标记 
 3     /// </summary>
 4     /// <param name="strHtml">包括HTML的源码 </param>
 5     /// <returns>已经去除后的文字</returns>
 6     public static string StripHTML(string strHtml)
 7     {
 8         string[] aryReg = { @"<script[^>]*?>.*?</script>", @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""'])(\\[""'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>", @"([\r\n])[\s]+", @"&(quot|#34);", @"&(amp|#38);", @"&(lt|#60);", @"&(gt|#62);", @"&(nbsp|#160);", @"&(iexcl|#161);", @"&(cent|#162);", @"&(pound|#163);", @"&(copy|#169);", @"&#(\d+);", @"-->", @"<!--.*\n" };
 9         string[] aryRep = { "", "", "", "\"", "&", "<", ">", " ", "\xa1", "\xa2", "\xa3", "\xa9", "", "\r\n", "" };
10         string newReg = aryReg[0];
11         string strOutput = strHtml;
12         for (int i = 0; i < aryReg.Length; i++)
13         {
14             Regex regex = new Regex(aryReg[i], RegexOptions.IgnoreCase);
15             strOutput = regex.Replace(strOutput, aryRep[i]);
16         }
17         strOutput.Replace("<", ""); strOutput.Replace(">", "");
18         strOutput.Replace("\r\n", ""); return strOutput;
19     }

 

posted @ 2014-09-25 15:05  情殇难愈  阅读(2117)  评论(1编辑  收藏  举报