怎么写去掉html代码函数,但要保留一些特殊的字符
比如下面这个函数是过滤Html代码:
Function delHtml(strHtml) '做了一个函数名叫delhtml
Dim objRegExp, strOutput
Set objRegExp = New Regexp ' 建立正则表达式
objRegExp.IgnoreCase = True ' 设置是否区分大小写
objRegExp.Global = True '是匹配所有字符串还是只是第一个
objRegExp.Pattern = "( <[a-zA-Z].*?> )|( <[\/][a-zA-Z].*?> ) " ' 设置模式引号中的是正则表达式,用来找出html标签
strOutput = objRegExp.Replace(strHtml, " ") '将html标签去掉
strOutput = Replace(strOutput, " < ", " < ") '防止非html标签不显示
strOutput = Replace(strOutput, "> ", "> ")
delHtml = strOutput
Set objRegExp = Nothing
End Function
但这样的话就把所以的 <和> 之间的内容过滤掉了,我现在的问题是要保留像 <p> 、 </p> 、 <b> 、 </b> 、 <img> 和 </img> 之间的图片等这些东西该怎么处理?
------解决方案--------------------try:
objRegExp.Pattern = "( <[ac-hj-oq-rt-z][^> ]*> )|( <[\/][ac-hj-oq-rt-z][^> ]*> ) "
objRegExp.IgnoreCase = True