读书人

ASP过滤外链保留站内链接(有过滤全

发布时间: 2012-12-30 10:43:15 作者: rapoo

ASP过滤外链,保留站内链接(有过滤所有链接代码)
本帖最后由 XingYuan171679045 于 2012-12-26 14:07:56 编辑 '函数
Function RegRemoveHref(HTMLstr)
Set ra = New RegExp
ra.IgnoreCase = True
ra.Global = True
ra.Pattern = "<a[^>]+>(.+?)<\/a>"
RegRemoveHref = ra.replace(HTMLstr,"$1")
END Function
'调用
RegRemoveHref(rs("带链接的内容")

这样过滤了所有链接,如果要保留站内链接或指定域名的链接,要怎么修改?
[解决办法]

Function RegRemoveHref(HTMLstr)
dim ra
set ra = New RegExp
ra.IgnoreCase = True
ra.Global = True
ra.Pattern = " href=[""'](https?.*?)[""' ]"
RegRemoveHref = ra.replace(HTMLstr,"")
END Function

[解决办法]
如果想完美一点,就用2个正则,一个是提取连接出来然后与你本站的地址做比较
如果含有本站网址的,就不过滤,否则就进行过滤
[解决办法]
ra.Pattern = "[\s]href=([""'])(https?(?:(?!(?:aaa.com
[解决办法]
bbb.com
[解决办法]
ccc.com))[^\1])*?)\1"

把aaa.com
[解决办法]
bbb.com
[解决办法]
ccc.com换成你不想过滤的站点串就行了

读书人网 >ASP

热点推荐