自学内容网 自学内容网

常用正则表达式

常用正则表达式

中文

/^[\u4e00-\u9fa5]+$/

限制字数:

/^[\u4e00-\u9fa5]{min, max}$/

// 比如只支持 3-10 个中文
/^[\u4e00-\u9fa5]{3, 10}$/

十六进制颜色

/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3}[a-fA-F0-9]{8}|[a-fA-F0-9]{4})$/
let regexp = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;
regexp.test('#6978ff');  // true
regexp.test('#333');     // true

数字

整数

正整数
/^\+?\d+$/
负整数
/^-?\d+$/
正负整数
/^\+?-?\d+$/
非负整数(包含正整数和0)
/^\d+&/

小数

正数
/^\d+\.\d+$/
负数
/^-?\d+\.\d+$/

浮点数

正浮点数
/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/
负浮点数
/^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$/
非负浮点数
/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$/
非正浮点数
/^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$/

身份证号

/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/

HTML 标签

/<(\w+)[^>]*>(.*?<\/\1>)?/

注释

/<!--[\s\S]*?-->/g

手机号码

号码规则详细说明
13段:130、131、132、133、134、135、136、137、138、139
14段:145、147
15段:150、151、152、153、155、156、157、158、159
17段:170、176、177、178
18段:180、181、182、183、184、185、186、187、188、189
国际码 如:中国(+86)

/^((\+?[0-9]{1,4})|(\(\+86\)))?(13[0-9]|14[57]|15[012356789]|17[03678]|18[0-9])\d{8}$/

XXX-XXXXXXX、XXXX-XXXXXXXX 类型的固定电话:

/(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}/

邮政编码

/^[1-9]\d{5}$/

域名

/^(https?:\/\/)?([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}\/?$/

网址

/^((https?:\/\/)?([^!@#$%^&*?.\s-]([^!@#$%^&*?.\s]{0,63}[^!@#$%^&*?.\s])?\.)+[a-z]{2,6}\/?/

IPv4

/^((?:(?:25[0-5]|2[0-4]\d|[01]?\d{1,2})\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d{1,2}))$/

IPv6

/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/

子网掩码(不包含 0.0.0.0)

/^(254|252|248|240|224|192|128)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(255|254|252|248|240|224|192|128|0)$/

带端口号的网址、ip

/^(https?:\/\/)?[\w-]+(\.[\w-]+)+:\d{1,5}\/?$/

端口号

/^((6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4}))$/

邮箱

邮箱规则:

  • 邮箱以a-z、A-Z、0-9开头,最小长度为1.
  • 如果左侧部分包含-、_、.则这些特殊符号的前面必须包一位数字或字母。
  • @符号是必填项
  • 右则部分可分为两部分,第一部分为邮件提供商域名地址,第二部分为域名后缀,现已知的最短为2位。 最长的为6为。
  • 邮件提供商域可以包含特殊字符-、_、.
/^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/

支持中文邮箱

/^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/

路径相关

linux 隐藏文件路径

/^\/(?:[^/]+\/)*\.[^/]*/

linux文件夹路径

/^\/(?:[^/]+\/)*$/

linux文件路径

/^\/(?:[^/]+\/)*[^/]+$/

window 文件夹路径

/^[a-zA-Z]:\\(?:\w+\\?)*$/

window 下文件路径

/^[a-zA-Z]:\\(?:\w+\\)*\w+\.\w+$/

资源地址

视频

/^https?:\/\/(.+\/)+.+(\.(swf|avi|flv|mpg|rm|mov|wav|asf|3gp|mkv|rmvb|mp4))$/i

图片

/^https?:\/\/(.+\/)+.+(\.(gif|png|jpg|jpeg|webp|svg|psd|bmp|tif))$/i

视频、图片的格式可以按照需求进行新增或者删除。

md5 格式(32)位

/^[a-f0-9]{32}$/

base64 格式

/^\s*data:(?:[a-z]+\/[a-z0-9-+.]+(?:;[a-z-]+=[a-z0-9-]+)?)?(?:;base64)?,([a-z0-9!$&',()*+;=\-._~:@/?%\s]*?)\s*$/i

ASCII码表中的全部的特殊字符

/[\x21-\x2F\x3A-\x40\x5B-\x60\x7B-\x7E]+/

匹配连续重复的字符

/(.)\1+/

原文地址:https://blog.csdn.net/qq_42880714/article/details/140271768

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!