📖 正则表达式语法速查

✨ 元字符

. 匹配除换行外的任意字符
\d 匹配数字 [0-9]
\D 匹配非数字
\w 匹配字母数字下划线 [a-zA-Z0-9_]
\W 匹配非单词字符
\s 匹配空白符(空格 / 制表 / 换行)
\S 匹配非空白符
\b 匹配单词边界
\B 匹配非单词边界
\n 换行符
\t 制表符
\0 空字符
\x41 十六进制字符(A)
\u4e00 Unicode 中文字符(\u4e00-\u9fa5)

🎯 字符类

[abc] 匹配 a b c 中的任意一个
[^abc] 匹配除 a b c 外的任意字符
[a-z] 匹配 a 到 z 之间的任意小写字母
[0-9] 匹配任意数字
[a-zA-Z0-9_] 匹配单词字符

🔢 量词

* 匹配前一个字符 0 次或多次(等价 {0,})
+ 匹配前一个字符 1 次或多次(等价 {1,})
? 匹配前一个字符 0 次或 1 次(等价 {0,1})
{n} 匹配恰好 n 次
{n,} 匹配至少 n 次
{n,m} 匹配 n 到 m 次
*? / +? / ?? 懒惰匹配:尽可能少地匹配

📦 分组与引用

(abc) 捕获分组,将 abc 作为一个整体
(?:abc) 非捕获分组,只分组不捕获
(?<name>abc) 命名分组(JS 中为 (?&lt;name&gt;abc))
\1 反向引用第 1 个分组
(?=abc) 正向先行断言:后面必须是 abc
(?!abc) 负向先行断言:后面不能是 abc
(?<=abc) 正向后行断言:前面必须是 abc
(?<!abc) 负向后行断言:前面不能是 abc
a|b 或运算,匹配 a 或 b

📍 锚点

^ 匹配字符串开头(多行模式匹配行首)
$ 匹配字符串结尾(多行模式匹配行尾)
\b 单词边界

🚩 修饰符

/pattern/g 全局匹配,找出所有匹配项
/pattern/i 忽略大小写
/pattern/m 多行模式,^ $ 匹配每行首尾
/pattern/s 点号匹配换行符
/pattern/u Unicode 模式,正确处理中文 / Emoji
/pattern/y 粘连模式,从 lastIndex 开始匹配

📝 常用实例

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ 邮箱
^1[3-9]\d{9}$ 中国大陆手机号
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$ 日期 yyyy-MM-dd
^((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$ IPv4 地址
^https?:\/\/[^\s/$.?#].[^\s]*$ URL
^\d{17}[\dXx]$ 18 位身份证
^[\u4e00-\u9fa5]+$ 纯中文
^[a-zA-Z][a-zA-Z0-9_]{4,19}$ 用户名(5-20 位字母开头)
^(?=.*[A-Za-z])(?=.*\d).{8,}$ 强密码(字母+数字,至少 8 位)
^[0-9a-fA-F]{24}$ MongoDB ObjectId
📖

正则表达式语法速查

程序员 完全免费 📥 下载离线版 🌙 支持黑夜模式

正则元字符、字符类、量词、分组断言、修饰符全收录,附邮箱、手机号、IP、密码强度等高频实例。配合「正则表达式在线测试」工具边查边练效果更佳。

类别程序员 · 文档速查
运行方式纯前端 · 离线运行
数据存储无存储

核心特性

6 大类语法分类
零宽断言详解
10+ 高频实例
关键字搜索
支持黑夜模式

怎么用

  1. 第 1 步
    按场景浏览分类区块,或用搜索框直接搜语法关键词。
  2. 第 2 步
    不确定写出来效果?复制到「正则表达式在线测试」工具里实测。
  3. 第 3 步
    注意「断言」不消耗字符,分组/量词的优先级关系容易踩坑。

更新记录

  • v1.02026-08-31工具上线:内置正则语法分类速查(元字符/字符类/量词/分组/断言/修饰符)、常用正则案例库、搜索过滤、一键复制;支持黑夜模式。