function isURL(url) {
const strRegex = '^((https|http|ftp)://)?'//(https或http或ftp):// 可有可无
+ '(([\\w_!~*\'()\\.&=+$%-]+: )?[\\w_!~*\'()\\.&=+$%-]+@)?' //ftp的user@ 可有可无
+ '(([0-9]{1,3}\\.){3}[0-9]{1,3}' // IP形式的URL- 3位数字.3位数字.3位数字.3位数字
+ '|' // 允许IP和DOMAIN(域名)
+ '(localhost)|'    //匹配localhost
+ '([\\w_!~*\'()-]+\\.)*' // 域名- 至少一个[英文或数字_!~*\'()-]加上.
+ '\\w+\\.' // 一级域名 -英文或数字 加上.
+ '[a-zA-Z]{1,6})' // 顶级域名- 1-6位英文
+ '(:[0-9]{1,5})?' // 端口- :80 ,1-5位数字
+ '((/?)|' // url无参数结尾 - 斜杆或这没有
+ '(/[\\w_!~*\'()\\.;?:@&=+$,%#-]+)+/?)$';//请求参数结尾- 英文或数字和[]内的各种字符
const re = new RegExp(strRegex, 'i'); // 大小写不敏感
if (re.test(encodeURI(url))) {
return true;
}
return false;

}

转载于:https://www.cnblogs.com/xiaxuening/p/10999615.html

js 正则匹配URL,网址,带端口,带query的相关推荐

  1. html正则表达式识别网址,JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)...

    本文实例讲述了JS正则匹配URL网址的方法.分享给大家供大家参考,具体如下: 最强的匹配网址-url的正则表达式:匹配www,http开头的一切网址 直接插入正则表达式: [a-zA-Z0-9][-a ...

  2. 正则匹配html中url,JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)

    本文实例讲述了JS正则匹配URL网址的方法.分享给大家供大家参考,具体如下: 最强的匹配网址-url的正则表达式:匹配www,http开头的一切网址 直接插入正则表达式: [a-zA-Z0-9][-a ...

  3. JS 正则匹配 URL

    //JS 正则匹配 URL var regexp = /((http|https):\/\/([\w\-]+\.)+[\w\-]+(\/[\w\u4e00-\u9fa5\-\.\/?\@\%\!\&a ...

  4. php 正则匹配中文标点,JavaScript_js实现正则匹配中文标点符号的方法,本文实例讲述了js正则匹配中 - phpStudy...

    js实现正则匹配中文标点符号的方法 本文实例讲述了js正则匹配中文标点符号的方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: js正则匹配中文标点符号 function ch ...

  5. html正则半角,JS正则密码校验之:JS正则匹配半角英文符号

    概述 在JS密码重网有剑据些文页的底社按标近新站的不的方校验中常常会遇到密码强度的校验需求,借用一位朋友提问的图,他在工作中遇到的一个比较经典的密码强度校验要和第,.年过事工宗据指数遍互业经搞断果会击 ...

  6. js正则匹配以{开头,以}结尾怎么写?

    我们经常需要获得某个标签开始和结束之间的内容,javascript如何实现获得以{开头,以}结尾的内容呢?这里还是得用到正则表达式,我们看看具体怎么实现? <!DOCTYPE html> ...

  7. html js 数量正则,js正则匹配多个全部数据问题

    需求:获取所有title里的内容 正则表达式后面加g表示多次匹配 方式一:match 返回数组 方式二 exec var str='OOOT BAORJCT 174296 22mm 10yard/lo ...

  8. JS正则密码校验之:JS正则匹配半角英文符号

    概述 在JS密码校验中常常会遇到密码强度的校验需求,借用一位朋友提问的图,他在工作中遇到的一个比较经典的密码强度校验要求: 这个需求有两个难点,一,是如何使用正则匹配所有半角英文标点符号,二,是如何验 ...

  9. Auto.js正则匹配字符串是否含有中文

    js正则匹配字符串是否含有中文 //验证字符串是否含有中文 function checkChinese(obj_val) {var reg = new RegExp("[\\u4E00-\\ ...

最新文章

  1. Spring Cloud构建分布式电子商务平台:服务消费(基础)
  2. 每天一个linux命令(12):more命令
  3. 选择“Win32汇编”的三大理由?
  4. 安卓给string对象赋值_String 面试题!看完让你恍然大悟!
  5. java 数组 push pop_JavaScript学习笔记:数组的push()、pop()、shift()和unshift()方法
  6. netstat 命令的 学习笔记
  7. 《Python Cookbook 3rd》笔记(4.7):迭代器切片
  8. [linux 日常]修改ls目录的颜色
  9. IDEA 中创建多级目录
  10. python 面向对象 类的内置方法
  11. javascript学习之数组的使用一 push pop shift unshift 方法
  12. linux emule 编译 wx-config --libs,Linux下的wxWidgets静态编译实现方法
  13. 计算机信息技术教程(笔记)
  14. ecshop shopex_json.php,Shopex到ECShop的转换教程
  15. 从零开始学Java自己利用接口和集合框架做的简单图书管理系统
  16. linux 使用 雅黑字体,linux 使用微软雅黑字体
  17. 使用java代码根据三角形的三个顶点坐标计算出三角形的中心点(重心)
  18. 升级成RESP3后,不仅多了13种新的数据类型,效率也提升了
  19. Springboot 注解类里面public @interface xxx 什么意思
  20. 教师运用计算机技术的难点,浅谈运用电脑技术进行备课的几点优势

热门文章

  1. 新年新技术:MongoDB 3.0
  2. 转:动态链接库的全局变量问题
  3. Yahoo中国变脸?
  4. 计算机一级ps2019,2019年计算机一级考试PS基础学习点子:PS菜单中英文对照表.docx...
  5. 区块链概念:Hash 算法
  6. react 渲染道具_关于React道具的另一篇文章
  7. 适合初学者的数据结构_数据结构101:图-初学者的直观介绍
  8. flexbox布局_这是您可以使用FlexBox制作的5种布局
  9. css 倒三角_倒三角结构:如何管理大型CSS项目
  10. CentOS报错:TNS-12541: TNS:no listener TNS-12560: TNS:protocol adapter error TNS-00511: No listener