您的位置:首页 > Web前端 > HTML

过滤字符串html标签方法

2014-03-10 10:06 330 查看
过滤字符串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);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: