简介
any-rule 维护了一个常用正则表达式合集,并且本身是一个支持 Web/VS Code/idea/Alfred Workflow 多平台的正则表达式工具。
安装
VS Code 应用商店中搜索“any-rule” IDEA插件搜索any-rule
使用
文件任意位置右键 -> and-rule,如果是后台代码,勾选自动去除首尾斜杠,前端代码则可以直接使用。
附常见正则表达式
火车车次
检验对象 | 检验规则 |
---|---|
火车车次 | ^[GCDZTSPKXLY1-9]\d{1,4}$ |
手机机身码(IMEI) | ^\d{15,17}$ |
必须带端口号的网址(或ip) | ^((ht |
网址(url,支持端口和"?+参数"和"#+参数) | ^(((ht |
统一社会信用代码 | ^[0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}$ |
迅雷链接 | ^thunderx?😕/[a-zA-Z\d]+=$ |
ed2k链接(宽松匹配) | ^ed2k://|file|.+|/$ |
磁力链接(宽松匹配) | ^magnet:?xt=urn:btih:[0-9a-fA-F]{40,}.*$ |
子网掩码 | ^(?:\d{1,2} |
linux"隐藏文件"路径 | ^/(?:[/]+/)*.[/]* |
linux文件夹路径 | ^/(?:[^/]+/)*$ |
linux文件路径 | ^/(?:[/]+/)*[/]+$ |
window"文件夹"路径) | ^[a-zA-Z]:\(?:\w+\?)*$ |
window下"文件"路径 | ^[a-zA-Z]:\(?:\w+\)*\w+.\w+$ |
股票代码(A股) | ^(s[hz] |
大于等于0, 小于等于150, 支持小数位出现5, 如145.5, 用于判断考卷分数 | ^150$ |
html注释 | ^<!–[\s\S]*?–>$ |
md5格式(32位) | ^([a-f\d]{32} |
版本号(version)格式必须为X.Y.Z | ^\d+(?:.\d+){2}$ |
视频(video)链接地址(视频格式可按需增删) | ^https?😕/(.+/)+.+(.(swf |
图片(image)链接地址(图片格式可按需增删) | ^https?😕/(.+/)+.+(.(gif |
24小时制时间(HH🇲🇲ss) | ^(?:[01]\d |
12小时制时间(hh🇲🇲ss) | ^(?:1[0-2] |
base64格式 | ^\s*data:(?:[a-z]+/[a-z0-9-+.]+(?:;[a-z-]+=[a-z0-9-]+)?)?(?:;base64)?,([a-z0-9!KaTeX parse error: Expected 'EOF', got '&' at position 1: &̲',()*+;=\-._~:@… |
数字/货币金额(支持负数、千分位分隔符) | ^-?\d+(,\d{3})*(.\d{1,2})?$ |
数字/货币金额 (只支持正数、不支持校验千分位分隔符 | (?:^1-9?(?:.[0-9]{1,2})?$) |
银行卡号(10到30位, 覆盖对公/私账户, 参考微信支付) | ^[1-9]\d{9,29}$ |
中文姓名 | ^(?:[\u4e00-\u9fa5·]{2,16})$ |
英文姓名 | (^[a-zA-Z]{1}[a-zA-Z\s]{0,20}[a-zA-Z]{1}$) |
车牌号(新能源) | [京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 A-Z]{1}[A-HJ-NP-Z]{1}(([0-9]{5}[DF]) |
车牌号(非新能源) | ^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 A-Z]{1}[A-HJ-NP-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$ |
车牌号(新能源+非新能源) | ^(?:[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 A-Z]{1}[A-HJ-NP-Z]{1}(?😦?:[0-9]{5}[DF]) |
手机号(mobile phone)中国(严谨), 根据工信部2019年最新公布的手机号段 | ^(?😦?:+ |
手机号(mobile phone)中国(宽松), 只要是13,14,15,16,17,18,19开头即可 | ^(?😦?:+ |
手机号(mobile phone)中国(最宽松), 只要是1开头即可, 如果你的手机号是用来接收短信, 优先建议选择这一条 | ^(?😦?:+ |
date(日期) | ^\d{4}(-)(1[0-2] |
email(邮箱) | ^(([<>()[]\.,;:\s@"]+(.[<>()[]\.,;:\s@"]+)*) |
座机(tel phone)电话(国内),如: 0341-86091234 | ^\d{3}-\d{8}$ |
身份证号(1代,15位数字) | ^[1-9]\d{7}(?:0\d |
身份证号(2代,18位数字),最后一位是校验位,可能为数字或字符X | ^[1-9]\d{5}(?:18 |
身份证号, 支持1/2代(15位/18位数字) | (^\d{8}(0\d |
护照(包含香港、澳门) | (^[EeKkGgDdSsPpHh]\d{8}$) |
帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线组合 | ^[a-zA-Z]\w{4,15}$ |
中文/汉字 | ^(?:[\u3400-\u4DB5\u4E00-\u9FEA\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA1F\uFA21\uFA23\uFA24\uFA27-\uFA29] |
小数 | ^\d{1,}$ |
html标签(宽松匹配) | <(\w+)[^>]>(.?</\1>)? |
qq号格式正确 | ^[1-9]\d{7}(?:0\d |
数字和字母组成 | ^[A-Za-z0-9]+$ |
小写英文字母组成 | ^[a-z]+$ |
密码强度校验,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符 | ^\S*(?=\S{6,})(?=\S*\d)(?=\S*[A-Z])(?=\S*[a-z])(?=\S*[!@# %^&*? ])\S* |
用户名校验,4到16位(字母,数字,下划线,减号) | ^[a-zA-Z0-9_-]{4,16}$ |
ip-v4 | ^(?😦?:25[0-5] |
ip-v6 | ^((([0-9A-Fa-f]{1,4}😃{7}[0-9A-Fa-f]{1,4}) |
16进制颜色 | ^#?([a-fA-F0-9]{6} |
微信号(wx),6至20位,以字母开头,字母,数字,减号,下划线 | ^[a-zA-Z][-_a-zA-Z0-9]{5,19}$ |
邮政编码(中国) | ^(0[1-7] |
中文和数字 | ^((?:[\u3400-\u4DB5\u4E00-\u9FEA\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA1F\uFA21\uFA23\uFA24\uFA27-\uFA29] |
不能包含字母 | ^[^A-Za-z]*$ |
java包名 | ^([a-zA-Z_][a-zA-Z0-9_])+([.][a-zA-Z_][a-zA-Z0-9_])+$ |
mac地址 | ^((([a-f0-9]{2}😃{5}) |
匹配连续重复的字符 | (.)\1+ |
最后附上any-rule的git地址
点我直达->any-rule