这个url网址检测的正则表达式判断十分准确,现在正则表达式的js函数分享一下:

[CODE=javascript]
//检查网址是否合法
function IsURL(str_url){
var strRegex = “^((https|http|ftp|rtsp|mms)?://)”
+ “?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?” //ftp的user@
+ “(([0-9]{1,3}\.){3}[0-9]{1,3}” // IP形式的URL- 199.194.52.184
+ “|” // 允许IP和DOMAIN(域名)
+ “([0-9a-z_!~*'()-]+\.)*” // 域名- www.
+ “([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.” // 二级域名
+ “[a-z]{2,6})” // first level domain- .com or .museum
+ “(:[0-9]{1,4})?” // 端口- :80
+ “((/?)|” // a slash isn’t required if there is no file name
+ “(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$”;
var re=new RegExp(strRegex);
//re.test()
if (re.test(str_url)){
return (true);
}else{
return (false);
}
}
[/CODE]

先看一个实例

这是我用asp写的一个搜索一个字符串里面第一张图片地址的函数(当然你可以将values那里换一个得到所有图片地址)

[CODE=javascript]
function RegExp_Execute(strng)
Dim regEx, Match, Matches,values
Set regEx = New RegExp ‘建立正则表达式。
regEx.Pattern = “src\=.+?\.(jpg|gif|png|bmp|jpeg)”
regEx.IgnoreCase = true ‘设置是否区分字符大小写。
regEx.Global = True ‘设置全局可用性。
Set Matches = regEx.Execute(strng) ‘执行搜索。
For Each Match in Matches ‘遍历匹配集合。
values=values&Match.value&chr(34) ‘找出第一张图片,cha(34)是ASCII码转换,代表”
exit for
Next
response.Write (values)
end function
[/CODE]

/*—————-   http://www.ourys.com原创,做人要厚道,转帖请标明来处    ——- Author:Hector ——-*/

正则表达式英文Regular Expression),在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sedgrep)普及开的。“正则表达式”通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

比如我们在网页中经常看见的一些格式验证,比如邮箱,qq号等等,大部分是运用的正则表达式,其他就不多说了,正则表达式的强大之处在你用时你才会感觉得到

这里有个学习正则表达式的好去处http://www.regexlab.com/zh/regref.htm