日期:2014-05-16  浏览次数:20321 次

JavaScript 正则表达式 验证网址
各位大侠:请问   我现在想写一个验证URL的正则表达式子,我看了网上很多例子.一头雾水   下面是网上的写法   ([w-]+.)+[w-]+(/[w-   ./?%&=]*)?   我现在想验证的网站地址格式:   含有http://开头   或者没有它   直接www开头.
各位给点意见.   是否可以分块解释一下上面的表达式的意思呢?谢在先!!

------解决方案--------------------
<script language= "javascript ">
function IsUrl(str)
{
var regUrl = /(http\:\/\/)?([\w.]+)(\/[\w- \.\/\?%&=]*)?/;
var result = str.match(regUrl);
if(result!=null) {alert( "Yes ")}
else {alert( "No! ")}
}
</script>

<FORM name= "bao ">
<INPUT TYPE= "text " NAME= "txt ">
<INPUT TYPE=BUTTON value= "TestURL " onClick= "IsUrl(document.bao.txt.value) ">
</FORM>
------解决方案--------------------
<script language= "javascript ">
function IsUrl(str)
{
var regUrl = /(http\:\/\/)?([\w.]+)(\/[\w- \.\/\?%&=]*)?/gi;
var result = str.match(regUrl);
if(result!=null) {alert( "Yes ")}
else {alert( "No! ")}
}
</script>

<FORM name= "bao ">
<INPUT TYPE= "text " NAME= "txt ">
<INPUT TYPE=BUTTON value= "TestURL " onClick= "IsUrl(document.bao.txt.value) ">
</FORM>
(http\:\/\/)?代表匹配http://0或1次,
([\w.]+)匹配www.sian.com
\/[\w- \.\/\?%&=]*)?匹配后面子串0或1次