码迷,mamicode.com
首页 > Web开发 > 详细

正则表达式匹配URL

时间:2016-11-23 23:30:31      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:blog   pre   地址   正则表达   ftp   code   log   地方   str   

正则表达式:

技术分享
var match = /^((ht|f)tps?):\/\/([\w\-]+(\.[\w\-]+)*\/)*[\w\-]+(\.[\w\-]+)*\/?(\?([\w\-\.,@?^=%&:\/~\+#]*)+)?/;
/* 
注:
(1)、如需允许其他联接方式,可以修改“(ht|f)tps?”部分,在“?”后面跟上符号“|”,然后加上您需要的联接方式,多个时用符号“|”分隔)。
(2)、如需允许URL参数包含其它字符,可以修改“[\w\-\.,@?^=%&:\/~\+#]”,以设置您需要的参数。
*/
技术分享

匹配:

(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...)后缀的地址:

技术分享
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)、匹配含参数的地址:

技术分享
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
技术分享

使用说明:

(1)、地址必须以http/https/ftp/ftps开头;

(2)、地址不能包含双字节符号或非链接特殊字符。

 

正则表达式匹配URL

标签:blog   pre   地址   正则表达   ftp   code   log   地方   str   

原文地址:http://www.cnblogs.com/wang1593840378/p/6095500.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!