using System;
using System.Web;
using System.Text.RegularExpressions;
public static string NoHTML(string Htmlstring)
{
//删除剧本
Htmlstring = Regex.Replace(Htmlstring,@"<script[^>]*?>.*?</script>", "",RegexOptions.IgnoreCase);
//删除HTML
Htmlstring = Regex.Replace(Htmlstring,@"<(.[^>]*)>","",RegexOption s.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"([\r\n])[\s]+","",Regex Options.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"-->","",RegexOptions.Ign oreCase);
Htmlstring = Regex.Replace(Htmlstring,@"<!--.*","",RegexOptions. IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(quot|#34);","\"",Rege xOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(amp|#38);","&",RegexO ptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(lt|#60);","<",RegexOpt ions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(gt|#62);",">",RegexOpt ions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(nbsp|#160);"," ",RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(iexcl|#161);","\xa1", RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(cent|#162);","\xa2",R egexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(pound|#网易);","\xa3", RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring,@"&(copy|#169);","\xa9",R egexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @"&#(\d+);","",RegexOptions.IgnoreCase);
Htmlstring.Replace("<","");
Htmlstring.Replace(">","");
Htmlstring.Replace("\r\n","");
Htmlstring=HttpContext.Current.Server.HtmlEncode(H tmlstring).Trim();
return Htmlstring;
}
/**////提取HTML代码中书契的C#函数
/// <summary>
/// 去除HTML标记
/// </summary>
/// <param name="strHtml">包孕HTML的源码 </param>
/// <returns>已经去除后的书契</returns>
using System;
using System.Text.RegularExpressions;
public class StripHTMLTest{
public static void Main(){
string s=StripHTML("<HTML><HEAD><TITLE>资料测试</TITLE></HEAD><BODY>信息</BODY></HTML>");
Console.WriteLine(s);
}
public static string StripHTML(string strHtml){
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|#网易);",
@"&(copy|#169);",
@"&#(\d+);",
@"-->",
@"<!--.*\n"
};
string [] aryRep = {
"",
"",
"",
"\"",
"&",
"<",
">",
" ",
"\xa1",//chr(161),
"\xa2",//chr(162),
"\xa3",//chr(网易),
"\xa9",//chr(169),
"",
"\r\n",
""
};
string newReg =aryReg[0];
string strOutput=strHtml;
for(int i = 0;i<aryReg.Length;i++){
Regex regex = new Regex(aryReg[i],RegexOptions.IgnoreCase);
strOutput = regex.Replace(strOutput,aryRep[i]);
}
strOutput.Replace("<","");
strOutput.Replace(">","");
strOutput.Replace("\r\n","");
return strOutput;
}
}
写一个静态要领
移除HTML标签#region 移除HTML标签
/**//// <summary>
/// 移除HTML标签
/// </summary>
/// <param name="HTMLStr">HTMLStr</param>
public static string ParseTags(string HTMLStr)
{
return System.Text.RegularExpressions.Regex.Replace(HTMLS tr, "<[^>]*>", "");
}
取出文本中的图片地址#region 取出文本中的图片地址
/**//// <summary>
/// 取出文本中的图片地址
/// </summary>
/// <param name="HTMLStr">HTMLStr</param>
public static string GetImgUrl(string HTMLStr)
{
string str = string.Empty;
string sPattern = @"^<img\s+[^>]*>";
Regex r = new Regex(@"<img\s+[^>]*\s*src\s*=\s*([']?)(?<url>\S+)'?[^> ]*>",
RegexOptions.Compiled);
Match m = r.Match(HTMLStr.ToLower());
if (m.Success)
str = m.Result("${url}");
return str;
}
分享到:
相关推荐
易语言过滤html文本源码,过滤html文本,去html代码子程序
通过正则表达式过滤到html中的标签,将内容保存下来
)>/isU", //过滤 等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可以加入的过滤 "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU", //过滤javascript的on事件 ); $tarr = array( " ", ...
HTML代码过滤技术
Dim RegEx Set RegEx = New RegExp ...asp过滤实现过滤所有的HTML代码,然后就是显示中文了,绝对的,找了好长时间呀,(原理就是找到这两个标签里的所标签全部删除,汗,啰嗦。) <%=removehtml(rs('game'))%>
易语言文本过滤源码,利用提取对比删除等一系列操作来达到过滤文本的功能
协同过滤算法代码 VS下运行 数据集采用MovieLens
易语言源码易语言过滤html文本源码.rar 易语言源码易语言过滤html文本源码.rar 易语言源码易语言过滤html文本源码.rar 易语言源码易语言过滤html文本源码.rar 易语言源码易语言过滤html文本源码.rar 易语言源码...
用于过滤HTML代码的工具,小巧,而且听实用的
Asp.net中如何过滤html,js,css代码
易语言过滤重复文本源码,过滤重复文本,重复文本过滤
易语言过滤文本只保留数字源码,过滤文本只保留数字
AutoHtml一组过滤器集合用于将纯文本转换成HTML代码
易语言过滤html文本源码。@易语言源码分享站。
包括常用过滤html标签、截取字符串及获得本页地址三大函数。 过滤html标签函数:如果只是把类似的标记统统去掉,并不需要考虑别的。 截取字符串函数:截取字符串并限制字符串长度,多于给定的长度 获得本页地址:...
开源代码NHtmlFilter 过滤Html危险脚本 防止XSS攻击 如何防止XSS攻击,在.net做web开发上真的很弱。 底层框架,基础类库是很不完善。又是做互联网应用,安全总是要考虑的吧。 今天要解决的一个小问题就是过滤掉用户...
App_Code生成静态过滤html代码操作sql
关于JAVA过滤器的编写,和一些要求!代码精简,方便使用
1、解压下载的CollaborativeFilteringBasedText压缩文件 2、操作系统中需装java jdk1.7或者以上版本 3、点击start.bat,在运行过程中,输出文本之间的距离和相似度