C#過濾html標簽
在項目中遇到這樣一個需求,需要將一段html轉換為一般文本返回,萬能的正則表達式來了。
正則表達式來拯救你,代碼如下:
1 public static string Html2Text(string htmlStr) 2 3 { 4 5 if (String.IsNullOrEmpty(htmlStr)) 6 7 { 8 9 return ""; 10 11 } 12 13 string regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; //定義style的正則表達式 14 15 string regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; //定義script的正則表達式 16 17 string regEx_html = "<[^>]+>"; //定義HTML標簽的正則表達式 18 19 htmlStr = Regex.Replace(htmlStr, regEx_style, "");//刪除css 20 21 htmlStr = Regex.Replace(htmlStr, regEx_script, "");//刪除js 22 23 htmlStr = Regex.Replace(htmlStr, regEx_html, "");//刪除html標記 24 25 htmlStr = Regex.Replace(htmlStr, "\\s*|\t|\r|\n", "");//去除tab、空格、空行 26 27 htmlStr = htmlStr.Replace(" ", ""); 28 29 htmlStr = htmlStr.Replace(""", "");//去除異常的引號" " " 30 31 htmlStr = htmlStr.Replace(""", ""); 32 33 return htmlStr.Trim(); 34 35 } Html2Text