asp如何去掉html

  介绍

小编给大家分享一下asp如何去掉html,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

asp去掉html的方法:1、直接禁用html标签;2、使用”功能RemoveHTML(){…}”方法去除;3、使用IE或其他工具去除;4,通过VBScript去掉html代码。

本文操作环境:windows7多系统,HTML5&, ASP3.0版,戴尔G3电脑。

asp去掉html代码:

方法一:禁用html

最简单的方法是直接禁用html标签而不用移除它们。可以使用替代()函数。例如:

strText =,取代(strText,,“& lt; script",,“& lt; script",, 1, 1, 1)

或者直接禁用所有的html:

strText =,取代(strText,,“& lt;“,,“& lt;“)

这样做虽然很安全,但显得不够友好。(用户提交的文本会变得难以阅读)

方法二:使用“& lt;“和“在“

怎样使得html标签从文本中消失呢?我们可以去掉“& lt;“和“祝辞,中间的所有内容

在JavaScript中这很简单:

function  RemoveHTML (, strText )   {   var  regEx =,/& lt;[^祝辞]*祝辞/g;   return  strText.replace(正则表达式,,““);   }

现在回到VBScript,对于脚本引擎5.0或更高版本(可以通过调用ScriptEngineMajorVersion和ScriptEngineMinorVersion函数来检验版本),我们也可以使用RegExp物体:

Function  RemoveHTML (, strText )   Dim 正则表达式   Set  RegEx =New  RegExp   时间=RegEx.Pattern “& lt;[^祝辞]*在“;   RegEx.Global =,真的   时间=RemoveHTML  RegEx.Replace (strText,,““)   最终获得函数

若不用正则表达式、下面的函数可以达到同样的目的:

Function  RemoveHTML (, strText )   Dim  nPos1   Dim  nPos2   时间=nPos1  InStr (strText,“& lt;“)   ,Do  While  nPos1 的在0   时间=nPos2  InStr (nPos1  +, 1, strText,,“在“)   If  nPos2 祝辞0,那么   strText =,左(strText, nPos1 作用;1),,,中期(strText, nPos2  +, 1)   其他的   Exit 做   最终获得;   时间=nPos1  InStr (strText,“& lt;“)   循环   RemoveHTML =strText   最终获得函数

以上的方法虽然都可以去掉括号内的html标签,但是这些方法都存在以下问题:

首先,文本内的任何不表示html的尖括号会被去除。而且两个尖括号中间的文本也会被删掉。换句话说,在文本中插入任何“& lt;“或“祝辞“都会出现不可预料的结果。

另外,这种方法不能控制删除哪些html标签。比如& lt; b> & lt; i>这些无害的标签通常是允许的。

方法三:使用IE或其他工具

有很多缺点:

“It  may  be  desirable 用parse  HTML  files  inside  a  Web  server  process 拷贝response 用a  browser  page 请求又是;然而,,,WebBrowser 控制,DHTML  Editing 控制,[,,以及other  Internet  Explorer  components  may  not  function  properly 拷贝an  Active  server  Pages  (ASP), page 或是other  application  run 拷贝a  Web  server 应用干净,(http://support.microsoft.com/support/kb/articles/Q244/0/85.ASP?LN=EN-US& SD=gn& FR=0)

方法四:VBScript

以下的函数可以限制到具体的html标签

简介:

要控制被删除的标签列表,可以通过向标记常数中添加/删除标记来实现。例如,要保留所有的& lt; B>标签,则从标记列表中删除B。当前的列表包含了MSDN中的所有html标签以及层标签。每个标签要用“;”括起来。

开始标签和结束标签都会被删除,例如“& lt;…在“和& lt;/?/p>

若标签同时在标记和BLOCKTAGLIST常数中,则起始标签和结束标签之间的所有内容都会被删除

没有结束标记的标签不被视为html标签,其内容不会被删除

块标签若没有结尾标记,从此标签开始到文本结束的所有内容会被删除

若“& lt; !——“后跟的字符不是空格,注释标签不会被删除

使用这个函数很简单:

strPlainText =, RemoveHTML (strTextWithHTML)

函数内容如下:

Function  RemoveHTML (, strText )   Dim 标记列表   TAGLIST =,,,,, ! DOCTYPE;;缩写;地址;APPLET;区域;B;基础;BASEFONT;“, _   “后面大;引用;身体;BR;按钮,标题;中心;引用;代码;“,_   “坳COLGROUP;指定表格中评论,DD;德尔;DFN; DIR; DIV, DL, DT, EM;嵌入;自定义字段;“,_   “字体;形式;框架;框架;头;H1, H2, H3, H4; H5;编辑;人力资源;HTML;我;IFRAME, IMG;“, _   “输入;INS ISINDEX; KBD;标签;层;LAGEND;李;联系;清单;地图;帐篷;“,_   “菜单;元;NOBR; NOFRAMES NOSCRIPT;对象;OL;选择;P;参数;明文;“,_   “前问,年代,桑普;脚本;选择;小;跨度;罢工;强劲;风格;接头;呷;“,_   “表;身体;TD;文本区域;TFOOT; TH; THEAD;书名;TR, TT; U; UL; VAR;超级;XMP;“   Const  BLOCKTAGLIST =,,,小应用程序;嵌入;框架;头;NOFRAMES; NOSCRIPT;对象;脚本;风格;“   Dim  nPos1   Dim  nPos2   Dim  nPos3   Dim  strResult   Dim  strTagName   Dim  bRemove   Dim  bSearchForBlock   时间=nPos1  InStr (strText,“& lt;“)   ,Do  While  nPos1 的在0   时间=nPos2  InStr (nPos1  +, 1, strText,,“在“)   If  nPos2 祝辞0,那么   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

asp如何去掉html