🔍 JavaScript 正则表达式速查表
常用正则表达式参考 | 在线正则测试工具
基础字符
任意字符
.
匹配除换行符外的任意单个字符
转义字符
\.
匹配特殊字符本身,如 \. 匹配点号
数字
\d
匹配任意数字,等同于 [0-9]
非数字
\D
匹配任意非数字字符
字母数字下划线
\w
匹配 [a-zA-Z0-9_]
非字母数字
\W
匹配非字母数字下划线字符
空白字符
\s
匹配空格、制表符、换行符等
非空白字符
\S
匹配非空白字符
量词
零次或多次
*
匹配0次或多次前面的元素
一次或多次
+
匹配1次或多次前面的元素
零次或一次
?
匹配0次或1次前面的元素
指定次数
{n}
匹配恰好n次
范围次数
{n,m}
匹配n到m次
至少次数
{n,}
匹配至少n次
贪婪匹配
.*
尽可能多地匹配
非贪婪匹配
.*?
尽可能少地匹配
锚点
字符串开始
^
匹配字符串的开始位置
字符串结束
$
匹配字符串的结束位置
单词边界
\b
匹配单词的开始或结束
非单词边界
\B
匹配非单词边界
分组与引用
捕获分组
(abc)
捕获并记住匹配的组
非捕获分组
(?:abc)
分组但不捕获
或运算
a|b
匹配 a 或 b
命名分组
<(?\w+>)
创建命名捕获组
前瞻断言
a(?=b)
匹配后面跟着b的a
负向前瞻
a(?!b)
匹配后面不跟着b的a
字符类
字符集
[abc]
匹配 a、b 或 c 中的任意一个
范围
[a-z]
匹配 a 到 z 之间的小写字母
排除字符
[^abc]
匹配除 a、b、c 外的任意字符
组合使用
[a-zA-Z0-9]
匹配所有字母和数字
常用正则表达式
手机号码
^1[3-9]\d{9}$
匹配中国大陆手机号码
电子邮箱
^[\w.-]+@[\w.-]+\.\w+$
匹配常见邮箱格式
URL链接
https?://[\w.-]+(?:/[\w./-]*)?
匹配HTTP/HTTPS链接
IP地址
^(?:\d{1,3}\.){3}\d{1,3}$
匹配IPv4地址
身份证号
^[1-9]\d{5}(?:\d{2})\d{10}$
匹配18位身份证号
日期格式
^\d{4}-\d{2}-\d{2}$
匹配YYYY-MM-DD格式
用户名
^[a-zA-Z]\w{5,17}$
字母开头,6-18位字母数字下划线
密码强度
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[\s\S]{8,}$
至少8位,包含大小写字母和数字
中文字符
[一-\u9fa5]
匹配中文字符
HTML标签
<\/?[a-z][\s\S]*>
匹配HTML标签
在线正则测试器
🎯 正则表达式测试
已复制到剪贴板