免费在线 正则表达式速查表
正则表达式速查表,包含交互式示例,涵盖锚点、量词、分组、字符类、环视断言及邮箱、URL、IPv4 等常用模式,可直接在浏览器中测试。免费,100% 客户端运行。
100% 客户端处理 · 数据永不离开您的浏览器| Pattern | Description | |
|---|---|---|
^ | Start of string (or line with m flag) | → |
$ | End of string (or line with m flag) | → |
\b | Word boundary | → |
\B | Non-word boundary | → |
\A | Start of string (no multiline) | → |
\Z | End of string (no multiline) | → |
* | Zero or more (greedy) | → |
+ | One or more (greedy) | → |
? | Zero or one (optional) | → |
{n} | Exactly n repetitions | → |
{n,} | n or more repetitions | → |
{n,m} | Between n and m repetitions | → |
*? | Zero or more (lazy) | → |
+? | One or more (lazy) | → |
(abc) | Capturing group | → |
(?:abc) | Non-capturing group | → |
(?<name>abc) | Named capturing group | → |
a|b | Alternation (OR) | → |
\1 | Backreference to group 1 | → |
\k<name> | Named backreference | → |
[abc] | Character set — matches a, b, or c | → |
[^abc] | Negated set — matches anything but a, b, or c | → |
[a-z] | Character range — lowercase a to z | → |
[a-zA-Z0-9] | Alphanumeric characters | → |
. | Any character except newline (use s flag to include \n) | → |
\d | Digit [0-9] | → |
\D | Non-digit [^0-9] | → |
\w | Word character [a-zA-Z0-9_] | → |
\W | Non-word character | → |
\s | Whitespace (space, tab, newline) | → |
\S | Non-whitespace | → |
\n | Newline character | → |
\t | Tab character | → |
\r | Carriage return | → |
\0 | Null character | → |
(?=...) | Positive lookahead — followed by | → |
(?!...) | Negative lookahead — not followed by | → |
(?<=...) | Positive lookbehind — preceded by | → |
(?<!...) | Negative lookbehind — not preceded by | → |
[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,} | Email address | → |
https?:\/\/[^\s<>"]+[^\s<>",.] | URL (http or https) | → |
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\b | IPv4 address | → |
\b\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])\b | Date (YYYY-MM-DD) | → |
(?:\+1[\s.-]?)?\(?\d{3}\)?[\s.-]\d{3}[\s.-]\d{4} | US phone number | → |
#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})\b | Hex color code | → |
\b4[0-9]{12}(?:[0-9]{3})?\b | Visa card number | → |
[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12} | UUID v4 | → |
Mini Regex Tester
Open full tester使用说明 正则表达式速查表
浏览按分类组织的约 50 条正则表达式条目。使用搜索框或分类筛选标签快速找到所需内容。
- 点击任意行将该模式和示例文本加载到底部的迷你测试器中。
- 在迷你测试器中根据需要修改模式或测试文本,用标志按钮切换 g、i、m、s 标志。
- 点击测试或按 Ctrl/Cmd+Enter。匹配项将内联高亮显示并以代码标签形式列出。
- 如需包含分组捕获和索引位置的高级测试,点击打开完整测试器前往正则测试工具。
常见问题
本速查表涵盖哪种正则引擎?
本速查表涵盖 JavaScript 的 ECMAScript 正则语法。大多数模式也兼容 Python、Java、Ruby 和 Go 的常见用法。JavaScript 不支持 PCRE 中的占有量词和原子组。
贪婪量词和懒惰量词有什么区别?
贪婪量词(*、+、{n,m})尽可能多地匹配文本。懒惰量词(*?、+?、{n,m}?)尽可能少地匹配。例如,<.*> 会整体匹配 "<b>text</b>",而 <.*?> 只匹配 "<b>"。
什么时候应该使用非捕获分组 (?:...)?
当需要对多个标记进行分组或应用量词,但不需要捕获文本时,使用 (?:...)。非捕获分组稍快,并使分组编号保持整洁。
什么是向前查找(lookahead)?何时有用?
向前查找 (?=...) 断言当前位置之后的内容匹配某个模式,而不消耗字符。例如,\d+(?= dollars) 匹配后面跟着 " dollars" 的数字,但不将 " dollars" 包含在匹配中。否定向前查找 (?!...) 则断言模式不在其后。
JavaScript 正则是否支持向后查找(lookbehind)?
支持,在现代浏览器中(Chrome 62+、Firefox 78+、Safari 16.4+)。向后查找 (?<=...) 断言匹配之前的内容。如需兼容旧版浏览器,请避免使用。
如何在本页测试正则?
点击速查表中的任意行将模式加载到底部的迷你测试器。修改模式和测试文本,切换标志,然后点击"测试"。如需完整匹配详情,请使用正则测试工具。
包含哪些常用模式?
"常用模式"分类包含:电子邮件地址、HTTP/HTTPS URL、IPv4 地址、ISO 8601 日期、美国电话号码、十六进制颜色代码(#RGB / #RRGGBB)、Visa 卡号和 UUID v4。