当前位置: 首页 > 图文教程 > 网络编程 > 正则表达式 > asp下正则实现URL自动链接的一个函数

正则表达式
js:正则处理超文本流
正则表达式高级学习技巧
用正则表达式来表示中文
正则表达式,相关链接
js:日期正则表达式及检测
正则表达式检查来访IP是否合法的实际应用
正则表达式简单的检查输入email是否合法程序
VBscript 的正则表达式 字符串匹配
比较不错的C#中的常用的正则表达式
EditPlus 正则替换图片ubb替换成img
向大家推荐一个收集整理正则表达式的网站
正则表达式详述第一部
正则表达式详述 二
正则表达式详述 三
正则表达式详述 四
正则(JS)re=new RegExp("^\\d*$");与re=/^\d*$/;之间区别?
用正则按最后一个"_"分割"字符
[PHP]常用正则表达式收集
一个非常不错的一个正则练习JS版
js正则匹配table tr

正则表达式 中的 asp下正则实现URL自动链接的一个函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 47 ::
收藏到网摘: n/a

复制代码 代码如下:

Function AutoLinkURLs(strString)
Dim match, matches, offset, url, email, link, relnkAutoLinkURL
relnkAutoLinkURL = "<a href=""[[%URL%]]"">[[%URLText%]]</a>"
If Not IsObject(regExp) Then Set regExp = New RegExp
regExp.Global = True
regExp.IgnoreCase = True
'Look for URLs
regExp.Pattern = "(((ht|f)tps?://)|(www\.))([\w-]+\.)+[\w-:]+(/[\w- ./?%#;&=]*)?"
Set matches = regExp.Execute(strString)
offset = 0
For Each match in matches
url = match
If Left(url, 4) = "www." Then url = "http://" & url
link = Replace(Replace(relnkAutoLinkURL, "[[%URLText%]]", match), "[[%URL%]]", url)
strString = Mid(strString, 1, match.FirstIndex + offset) & link & Mid(strString, match.FirstIndex + 1 + match.Length + offset, Len(strString))
offset = offset + Len(link) - Len(match)
Next
'Look for emails
regExp.Pattern = "[A-Za-z0-9_+-.']+@\w+([-.]\w+)*\.\w+([-.]\w+)*"
Set matches = regExp.Execute(strString)
offset = 0
For Each match in matches
email = match
link = Replace(Replace(relnkAutoLinkURL, "[[%URLText%]]", match), "[[%URL%]]", "mailto:" & email)
strString = Mid(strString, 1, match.FirstIndex + offset) & link & Mid(strString, match.FirstIndex + 1 + match.Length + offset, Len(strString))
offset = offset + Len(link) - Len(match)
Next
AutoLinkURLs = strString
End Function