正则表达式速查表

JavaScript正则表达式常用语法速查表,方便快速查阅。

字符类

.匹配除换行符外的任意单个字符
\d匹配数字 [0-9]
\D匹配非数字 [^0-9]
\w匹配单词字符 [a-zA-Z0-9_]
\W匹配非单词字符 [^a-zA-Z0-9_]
\s匹配空白符 (空格、制表符、换行等)
\S匹配非空白符
[abc]匹配 a、b 或 c 中的任意一个
[^abc]匹配除 a、b、c 以外的任意字符
[a-z]匹配 a 到 z 范围内的任意字符

量词

*重复零次或多次 (等价于 {0,})
+重复一次或多次 (等价于 {1,})
?重复零次或一次 (等价于 {0,1})
{n}重复 n 次
{n,}重复至少 n 次
{n,m}重复 n 到 m 次
*?非贪婪匹配,尽可能少的重复
+?非贪婪匹配,尽可能少的重复
??非贪婪匹配,尽可能少的重复

分组与捕获

(pattern)捕获组,并记录匹配的内容
(?:pattern)非捕获组,仅分组但不捕获
(?pattern)命名捕获组 (ES2018)
\n反向引用,引用第 n 个捕获组
\k反向引用命名捕获组

边界断言

^匹配输入的开始位置
$匹配输入的结束位置
\b匹配单词边界
\B匹配非单词边界

零宽断言

(?=pattern)正向肯定前瞻,后面必须匹配 pattern
(?!pattern)正向否定前瞻,后面不能匹配 pattern
(?<=pattern)反向肯定后顾,前面必须匹配 pattern (ES2018)
(?反向否定后顾,前面不能匹配 pattern (ES2018)

修饰符

g全局匹配,找到所有匹配而非在第一个之后停止
i忽略大小写
m多行模式,^ 和 $ 匹配每行的开始和结束
s单行模式,允许 . 匹配换行符
uUnicode 模式,正确处理 Unicode 码点
y粘性模式,从 lastIndex 位置开始匹配

特殊字符转义

\^ \$ \. \* \+ \? \| \\ \[ \{ \(需要转义的特殊字符
\t制表符
\n换行符
\r回车符
\f换页符
\v垂直制表符
\cX控制字符 Ctrl-X
\xhh十六进制字符 hh
\uhhhhUnicode 字符 (ES5)
\u{hhhh}Unicode 码点 (ES2015,需 u 标志)

常用模式示例

/^\d+$/匹配纯数字字符串
/^\w+$/匹配单词字符字符串
/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/简单邮箱验证
/^https?:\/\/[\w\-]+(\.[\w\-]+)+[/#?]?.*$/简单 URL 验证
/^1[3-9]\d{9}$/中国大陆手机号(简单)
/^\d{17}[\dXx]$/身份证号(18位)

正则表达式速查表 - 工具简介

本工具整理了 JavaScript 正则表达式的常用语法,按功能分类展示,方便快速查阅。所有语法均基于 ECMAScript 规范,并标注了需要较高版本支持的特性(如命名捕获组、后顾断言)。

使用说明

  • 浏览各个分类卡片,找到所需的语法。
  • 点击语法或说明可复制(如需复制功能可自行添加)。
  • 注意:部分高级特性(如命名捕获组、后顾断言)需要 ES2018 支持。

提示:配合 Regex Tester 可实时测试您的正则表达式。

返回开发工具