亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > regex > 正文

js匹配網址url的正則表達式集合

2020-01-20 22:05:15
字體:
來源:轉載
供稿:網友

DNS規定,域名中的標號都由英文字母和數字組成,每一個標號不超過63個字符,也不區分大小寫字母。標號中除連字符(-)外不能使用其他的標點符號。級別最低的域名寫在最左邊,而級別最高的域名寫在最右邊。由多個標號組成的完整域名總共不超過255個字符。所以驗證則網址url的正則可以如下幾種

方法一:

function checkUrl(urlString){if(urlString!=""){var reg=/(http|ftp|https):////[/w/-_]+(/.[/w/-_]+)+([/w/-/.,@?^=%&:/~/+#]*[/w/-/@?^=%&/~/+#])?/;if(!reg.test(urlString)){alert("不是正確的網址吧,請注意檢查一下");						}					}}

方法二:推薦

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);   } }var testUrl;testUrl="http://harveyzeng.iteye.com/blog/1776991";//var testUrl="http://www.49028c.com/article/1.htm";alert(IsURL(testUrl));

剛發現一個不錯的多功能測試函數的代碼:

<script>/** * 正則表達式判斷網址是否有效 */ (function(){  "use strict";   var urlDict=[    //Bad Case    'www.baidu.com',           //常規網址,未帶協議頭的地址    'w.baidu.com',            //常規網址,短子域名    'baidu.com',             //常規網址,僅有主域名    '測試.com',              //非常規合法網址,中文域名不在參考之列    '1.2',                //錯誤域名    ' WWWW ',              //無效字符串    '111測試',              //無效字符串    //Correct Case    'http://baidu.com',          //常規網址,僅有主域名    'http://www.baidu.com',        //常規網址,帶子域名    'https://www.baidu.com/',       //常規網址,使用https協議頭,帶根目錄    'http://www.baidu.com/api',      //常規網址,有一級目錄下資源    'http://www.subdomain.baidu.com/index/subdir',   //常規網址,多級子域名,多級目錄    'http://www.www.subdomain.baidu.com/index/subdir/',//常規網址,多級子域名,多級目錄,目錄地址閉合    'http://io.io'            //非常規網址,多級子域名,多級目錄,目錄地址閉合  ];   // 建議的正則  function isURL(str){    return !!str.match(/(((^https?:(?:////)?)(?:[-;:&=/+/$,/w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=/+/$,/w]+@)[A-Za-z0-9.-]+)((?://[/+~%//./w-_]*)?/??(?:[-/+=&;%@./w_]*)#?(?:[/w]*))?)$/g);  }   // 不知道誰寫的簡單版的坑爹正則  function badRegFn(str){    return !!str.match(/(http[s]?|ftp):////[^///.]+?/..+/w$/g);  }	//jb51	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);       }    }    // 測試用例覆蓋  (function(){    var ret={};     var collect=function(link){      var obj={},fnList=[isURL,badRegFn,IsURL];      for(var i=0,j=fnList.length;i<j;i++){        var fn=fnList[i];        obj[fn.name]=fn.call(null,link);      }      return obj;    };     for(var i=0,j=urlDict.length;i<j;i++){      ret[urlDict[i]]=collect(urlDict[i]);    }     console.log(ret),console.table(ret);  }()); }());</script>

運行以后通過chorme的F12查看效果

上面介紹的主要是js函數的寫法與判斷方法,下面是小編整理的一些關于驗證網址的正則表達式大家可以參考一下

正則表達式
(http|ftp|https):////[/w/-_]+(/.[/w/-_]+)+([/w/-/.,@?^=%&:/~/+#]*[/w/-/@?^=%&/~/+#])?
匹配 http://regxlib.com/Default.aspx | http://electronics.cnet.com/electronics/0-6342366-8-8994967-1.html
不匹配 www.yahoo.com

正則表達式
^//{2}[/w-]+//(([/w-][/w-/s]*[/w-]+[$$]?$)|([/w-][$$]?$))
匹配 //server/service | //server/my service | //serv_001/service$
不匹配 //my server/service | //server/ service | //server$/service

正則表達式
^(http|https|ftp)/://([a-zA-Z0-9/./-]+(/:[a-zA-Z0-9/.&%/$/-]+)*@)?((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9/-]+/.)*[a-zA-Z0-9/-]+/.[a-zA-Z]{2,4})(/:[0-9]+)?(/[^/][a-zA-Z0-9/./,/?/'////+&%/$#/=~_/-@]*)*$
匹配 http://www.sysrage.net | https://64.81.85.161/site/file.php?cow=moo's |ftp://user:pass@host.com:123
不匹配 sysrage.net

正則表達式
^([a-zA-Z]/:|////[^////:*?"<>|]+//[^////:*?"<>|]+)(//[^////:*?"<>|]+)+(/.[^////:*?"<>|]+)$
匹配 c:/Test.txt | //server/shared/Test.txt | //server/shared/Test.t
不匹配 c:/Test | //server/shared | //server/shared/Test.?

正則表達式
^(http|https|ftp)/://([a-zA-Z0-9/./-]+(/:[a-zA-Z0-9/.&%/$/-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9/-]+/.)*[a-zA-Z0-9/-]+/.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(/:[0-9]+)*(/($|[a-zA-Z0-9/./,/?/'///+&%/$#/=~_/-]+))*$
匹配 http://site.com/dir/file.php?var=moo | https://localhost |ftp://user:pass@site.com:21/file/dir
不匹配 site.com | http://site.com/dir//

正則表達式
^([a-zA-Z]/:)(//[^///:*?<>"|]*(?<![ ]))*(/.[a-zA-Z]{2,6})$
匹配 C:/di___r/fi_sysle.txt | c:/dir/filename.txt
不匹配 c:/dir/file?name.txt

正則表達式
^([a-zA-Z0-9]([a-zA-Z0-9/-]{0,61}[a-zA-Z0-9])?/.)+[a-zA-Z]{2,6}$
匹配 regexlib.com | this.is.a.museum | 3com.com
不匹配 notadomain-.com | helloworld.c | .oops.org

正則表達式
^(((ht|f)tp(s?))/://)?(www.|[a-zA-Z].)[a-zA-Z0-9/-/.]+/.(com|edu|gov|mil|net|org|biz|info|name|museum|us|ca|uk)(/:[0-9]+)*(/($|[a-zA-Z0-9/./,/;/?/'///+&%/$#/=~_/-]+))*$
匹配 www.blah.com:8103 | www.blah.com/blah.asp?sort=ASC |www.blah.com/blah.htm#blah
不匹配 www.state.ga | http://www.jb51.ru

正則表達式
/b(([/w-]+://?|www[.])[^/s()<>]+(?:/([/w/d]+/)|([^[:punct:]/s]|/)))
匹配 http://VeVB.COm/blah_blah | http://VeVB.COm/blah_blah/ | (Something like http://VeVB.COm/blah_blah) | http://VeVB.COm/blah_blah_(wikipedia) | (Something like http://VeVB.COm/blah_blah_(wikipedia)) | http://VeVB.COm/blah_blah. |http://VeVB.COm/blah_blah/. | <http://VeVB.COm/blah_blah> | <http://VeVB.COm/blah_blah/>| http://VeVB.COm/blah_blah, | http://www.example.com/wpstyle/?p=364. | http://?df.ws/123 | rdar://1234 | rdar:/1234 | http://userid:password@example.com:8080 |http://userid@example.com | http://userid@example.com:8080 |http://userid:password@example.com
不匹配 no_ws.example.com | no_proto_or_ws.com | /relative_resource.php

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美国产一区二区三区| 日韩av电影中文字幕| 丝袜一区二区三区| 久久精品视频亚洲| 日本欧美一级片| 久久精品视频一| 国产欧美精品在线播放| 久热精品视频在线免费观看| 亚洲精品久久久久久久久久久| 欧美久久精品午夜青青大伊人| 日韩美女写真福利在线观看| 国产热re99久久6国产精品| 日韩av免费在线播放| 91久久精品美女高潮| 在线日韩av观看| 亚洲综合在线播放| 国产精品视频公开费视频| 欧美激情视频网站| 久久久视频免费观看| 最近2019免费中文字幕视频三| 日韩资源在线观看| 国产精品第10页| 亚洲va久久久噜噜噜| 欧美性jizz18性欧美| 亚洲国产91精品在线观看| 日本精品视频在线观看| 青青草原成人在线视频| 日本精品久久久久久久| 亚洲国产日韩欧美在线99| 欧美精品一区在线播放| 日韩精品欧美激情| 欧美日韩国产中文字幕| 色妞欧美日韩在线| 夜夜嗨av色一区二区不卡| 日韩欧美亚洲成人| 亚洲风情亚aⅴ在线发布| 夜色77av精品影院| 久久韩国免费视频| 国产精品高潮呻吟视频| 成人免费看吃奶视频网站| 中文字幕精品www乱入免费视频| 欧美性生交xxxxx久久久| 久久久噜久噜久久综合| 欧美成人三级视频网站| 成人激情视频网| 国产精品69av| 亚洲免费视频观看| 538国产精品一区二区在线| 精品亚洲永久免费精品| 色悠久久久久综合先锋影音下载| 久久国产天堂福利天堂| 国产成人精品综合久久久| 欧美激情性做爰免费视频| 日本在线精品视频| 亚洲性av网站| 97精品欧美一区二区三区| 欧美成人h版在线观看| 欧美在线激情视频| 亚洲一级免费视频| 国产一区二区色| 成人免费在线网址| 日韩国产精品亚洲а∨天堂免| 国产免费一区视频观看免费| 7777免费精品视频| 亚洲成色777777女色窝| 精品丝袜一区二区三区| 欧美色欧美亚洲高清在线视频| 色婷婷av一区二区三区在线观看| 国产va免费精品高清在线| 亚洲片国产一区一级在线观看| 欧美大码xxxx| 国产精彩精品视频| 亚洲免费伊人电影在线观看av| 亚洲精品白浆高清久久久久久| 国产精品小说在线| 91九色综合久久| 精品亚洲一区二区三区在线播放| 亚洲18私人小影院| 伦伦影院午夜日韩欧美限制| 91精品国产色综合久久不卡98| 欧美中文在线观看| 日韩欧美中文字幕在线播放| 97视频在线免费观看| 在线精品91av| 欧美在线免费视频| 亚洲一区二区三区四区在线播放| 亚洲人成电影网| 国语自产精品视频在线看| 精品色蜜蜜精品视频在线观看| 日本精品视频在线| 911国产网站尤物在线观看| 91精品视频免费看| 欧美国产在线电影| 91精品国产九九九久久久亚洲| 96精品久久久久中文字幕| 欧美高清视频在线观看| 热门国产精品亚洲第一区在线| 亚洲精品日韩激情在线电影| 日日噜噜噜夜夜爽亚洲精品| 日韩欧美国产高清91| 这里精品视频免费| 国产日韩av高清| 亚洲精品欧美日韩| 日韩精品亚洲视频| 亚洲精品按摩视频| 亚洲毛茸茸少妇高潮呻吟| 国产精品777| 欧美片一区二区三区| 欧美日本国产在线| 国产精品视频在线播放| 性欧美视频videos6一9| 久久人人爽亚洲精品天堂| 久久人人爽人人爽人人片亚洲| 亚洲欧洲中文天堂| 96pao国产成视频永久免费| 91亚洲va在线va天堂va国| 黑人精品xxx一区| 青青a在线精品免费观看| 91九色综合久久| 亚洲欧美日韩久久久久久| 成人在线播放av| 亚洲欧美另类国产| 国产69久久精品成人看| 成人网在线免费观看| 国产精品美乳一区二区免费| 成人综合国产精品| 久久久电影免费观看完整版| 日韩欧美中文字幕在线播放| 国产男女猛烈无遮挡91| 亚洲国产天堂网精品网站| 欧洲精品毛片网站| 这里精品视频免费| 亚洲性无码av在线| 欧美韩日一区二区| 亚洲精品国产综合区久久久久久久| 国产精品6699| 亚洲女人被黑人巨大进入| 日韩av免费在线播放| 亚洲精品乱码久久久久久按摩观| 日本不卡高字幕在线2019| 91在线免费观看网站| 97久久国产精品| 综合网中文字幕| 伊人久久五月天| 欧美性高跟鞋xxxxhd| 日韩av最新在线| 国产一区二区三区中文| 亚洲qvod图片区电影| 亚洲美女视频网站| 亚洲另类图片色| 深夜福利91大全| 欧美性xxxx极品hd欧美风情| 午夜精品99久久免费| 亚洲精品按摩视频| 欧美理论片在线观看| 国产精品精品一区二区三区午夜版| 亚洲一区二区三区视频播放| 国产精品一区二区久久| 精品欧美激情精品一区| 欧美性极品少妇精品网站| 中文字幕一区二区三区电影| 亚洲最大成人网色| 精品国产一区二区三区久久| 亚洲日韩欧美视频|