过滤字符串html标签方法,如果输入的过滤标签为“*”,那么给字符串加上p标签
public static string noTagHtml(string str, string tagname) { string zz = @"(<" + tagname + ".*?>)|(</" + tagname + ">)"; if (tagname == "script") zz = "(<" + tagname + ".*?>)*(</" + tagname + ">)"; //过滤除P标签的所有标签,不清除P标签里css样式 else if (tagname == "p") { //zz = @"</?\s*(?!p|br)+\b[^>]*>"; zz = @"</?\s*(?!br)+\b[^>]*>"; Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline); str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase); str = r.Replace(str, ""); } else if (tagname == "*") { zz = @"(<([^>]*)>)"; Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline); str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase); str = r.Replace(str, ""); Regex regex1 = new Regex(@"\n", RegexOptions.IgnoreCase); str = regex1.Replace(str, ""); Regex regex2 = new Regex(@"\n[\s| ]*\r", RegexOptions.IgnoreCase); str = regex2.Replace(str, ""); string[] hangCounts = str.Split(‘\r‘); string strTempList = ""; for (int k = 0; k < hangCounts.Length; k++) { if (!strTempList.Equals("")) { strTempList = strTempList + ""; } if (!hangCounts[k].Equals("")) { strTempList = strTempList + "<p>" + hangCounts[k] + "</p>\r\n"; } } strTempList = strTempList + ""; str = strTempList; } else { Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline); str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase); str = r.Replace(str, ""); } return (str); }