正则表达式:php
var match = /^((ht|f)tps?):\/\/([\w\-]+(\.[\w\-]+)*\/)*[\w\-]+(\.[\w\-]+)*\/?(\?([\w\-\.,@?^=%&:\/~\+#]*)+)?/;
/*
注:
(1)、如需容许其余联接方式,能够修改“(ht|f)tps?”部分,在“?”后面跟上符号“|”,而后加上您须要的联接方式,多个时用符号“|”分隔)。
(2)、如需容许URL参数包含其它字符,能够修改“[\w\-\.,@?^=%&:\/~\+#]”,以设置您须要的参数。
*/
匹配:html
(1)、直接匹配域名地址:正则表达式
var matchString = 'https://i.cnblogs.com'; console.log(match.test(matchString)); // ==> true
var matchString = 'https://i.cnblogs.com/'; console.log(match.test(matchString)); // ==> true
var matchString = 'https://i.cnblogs.com//'; // ==> 不容许非域名或参数之外的地方出现双“/”; console.log(match.test(matchString)); // ==> false
(2)、匹配连接含(*.htm,*.html,*.php,*.aspx...)后缀的地址:post
var matchString = 'https://i.cnblogs.com/EditPosts.aspx'; console.log(match.test(matchString)); // ==> true
var matchString = 'https://i.cnblogs.com./EditPosts.aspx'; // ==> 不容许参数之外的地方以双“.”结尾; console.log(match.test(matchString)); // ==> false
(3)、匹配含参数的地址:spa
var matchString = 'https://i.cnblogs.com/EditPosts.aspx?opt=1'; console.log(match.test(matchString)); // ==> true
var matchString = 'https://i.cnblogs.com/EditPosts.aspx?opt=1&user=' console.log(match.test(matchString)); // ==> true
使用说明:code
(1)、地址必须以http/https/ftp/ftps开头;htm
(2)、地址不能包含双字节符号或非连接特殊字符。blog