zoukankan
html css js c++ java
利用正则表达式去掉html代码
using
System.Text.RegularExpressions;
//
需要引用
//
利用正则表达式去掉"<"和">"之间的内容
private
string
StripHT(
string
strHtml)
{
Regex regex
=
new
Regex(
"
<.+?>
"
,RegexOptions.IgnoreCase);
string
strOutput
=
regex.Replace(strHtml,
""
);
return
strOutput;
}
//
方法二(不知为什么此方法占用CPU100%)
public
static
string
DropHTML(
string
strHtml)
{
string
[] aryReg
=
{
@"
<script[^>]*?>.*?</script>
"
,
@"
<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""''])(\\[""''tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>
"
,
@"
([\r])[\s]+
"
,
@"
&(quot|#34);
"
,
@"
&(amp|#38);
"
,
@"
&(lt|#60);
"
,
@"
&(gt|#62);
"
,
@"
&(nbsp|#160);
"
,
@"
&(iexcl|#161);
"
,
@"
&(cent|#162);
"
,
@"
&(pound|#163);
"
,
@"
&(copy|#169);
"
,
@"
&#(\d+);
"
,
@"
-->
"
,
@"
<!--.*
"
}
;
string
[] aryRep
=
{
""
,
""
,
""
,
"
\
""
,
"
&
"
,
"
<
"
,
"
>
"
,
"
"
,
"
\xa1
"
,
//
chr(161),
"
\xa2
"
,
//
chr(162),
"
\xa3
"
,
//
chr(163),
"
\xa9
"
,
//
chr(169),
""
,
"
\r
"
,
""
}
;
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
"
,
""
);
return
strOutput;
}
查看全文
相关阅读:
VC++对话框笔记
STL中用erase()方法遍历删除元素
VC++中不小心选错工程类型的解决办法
directX中常用的数学计算
VC++中string、char* 转换为LPCSTR
判断空间上点是否在直线上
vc6.0插件
VC++常用定义(如SAFE_DELETE等)
关于控件的AutoSize属性影响界面布局的问题解决
C#判断日期是否正确(1900~今年,月份,天数)
原文地址:https://www.cnblogs.com/wang123/p/505758.html
最新文章
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
php下swf开发技术文档
Symfony 2 twig模板中常用函数
CHARINDEX
REPLACE
UPDATE... SET.. FROM...WHERE...
Mysql 为用户授权,运行远程连接
Flash Builder4.6 破解方法
通过JXL生成Excel报表!
对架构师而言,什么最重要?
热门文章
CentOS系统时区、日期和时间
深入了解字符集和编码
JS面向对象编程之对象
Spring 资源文件properties的配置
centos6.2安装jdk1.6.0_30
常见切入点表达式的例子(aop execution 表达式 )
CSS ul 中 li 不能居左对齐的问题
Centos:新安装mysql修改root密码
win32 控件的api和消息函数
win32 application
Copyright © 2011-2022 走看看