• 正则表达式匹配URL


    正则表达式:

    复制代码
    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)、地址不能包含双字节符号或非链接特殊字符。

    完美,只是因为简单。
     
    分类: js,reg
    转载:http://www.cnblogs.com/jschar/p/6092585.html
  • 相关阅读:
    Docker安装MySQL&Redis
    使用VirtualBox+Vagrant快速搭建Linux虚拟机环境
    Java集合工具类的一些坑,Arrays.asList()、Collection.toArray()...
    1.docker常用命令
    4. 带有延迟时间的Queue(DelayQueue)
    3. 基于优先级的Queue(PriorityBlockingQueue)
    2. 常见的Queue
    1. 模拟Queue
    14. 线程调度
    13. 线程池
  • 原文地址:https://www.cnblogs.com/wang1593840378/p/6095500.html
Copyright © 2020-2023  润新知