URL网址的正则检验(验证字符串是否符合URL网址的格式) | 您所在的位置:网站首页 › 网址格式 › URL网址的正则检验(验证字符串是否符合URL网址的格式) |
【 学习探索过程中记下的点点笔记,以供分享,欢迎大家一起学习探讨~如有雷同可附链接,谦虚学习!】 URL网址的组成部分: 协议:// =>协议有http/https/ftp (可有可无) 域名 : =>如www.xxx.cn,xxx.cn,xxx.xxx.xx.com, xxx.xxx.xxx.com.cn(必须有) 请求路径:如 / ,/index .html , /stu/index.html, /stu/(可有可无) 问号传参: 如?xxx=xx&xxx=xxx(可有可无) 哈希值:如#xxx(可有可无) 根据上面的组成部分,我们可以得出验证URL网址的正则表达式,代码如图: let str = "http://www.test.cn/?lx=1&from=wx#video"; let reg = /^(?:(http|https|ftp):\/\/)?((?:[\w-]+\.)+[a-z0-9]+)((?:\/[^/?#]*)+)?(\?[^#]+)?(#.+)?$/i; console.log(reg.exec(str)) //exec()完全捕获,返回null说明不匹配,匹配则返回数组,数组的分组看正则表达式的左括号(。 //如果左括号‘(’后加了‘?:’,说明该组只匹配不捕获打印结果如下: |
CopyRight 2018-2019 实验室设备网 版权所有 |