Regex 速查表

通过这份完整指南掌握正则表达式。学习用于查找文本、数字、电子邮件、URL等的模式。适合初学者和高级用户。

G
GUi Softworks
8 分钟阅读

什么是 Regex?

正则表达式(regex)是定义搜索模式的字符序列。它们在查找、匹配和处理文本方面非常强大。

基本字符

模式描述示例
除换行符外的任意字符a.c 匹配 "abc"、"a1c"
\d任意数字 (0-9)\d\d 匹配 "42"
\D任意非数字\D+ 匹配 "abc"
\w单词字符 (a-z, A-Z, 0-9, _)\w+ 匹配 "hello_123"
\W非单词字符\W 匹配 "@"、"#"
\s空白字符(空格、制表符、换行符)\s+ 匹配 " "
\S非空白字符\S+ 匹配 "hello"

量词

模式描述示例
*0 次或更多ab*c 匹配 "ac"、"abc"、"abbc"
+1 次或更多ab+c 匹配 "abc"、"abbc"
?0 次或 1 次(可选)colou?r 匹配 "color"、"colour"
{n}恰好 n 次\d{4} 匹配 "2025"
{n,}n 次或更多\d{2,} 匹配 "42"、"123"
{n,m}n 到 m 次\d{2,4} 匹配 "42"、"123"、"2025"

锚点

模式描述示例
^字符串/行的开头^你好 匹配 "你好世界"
$字符串/行的结尾世界$ 匹配 "你好世界"
\b单词边界\bcat\b 匹配 "cat" 不匹配 "category"
\B非单词边界\Bcat 匹配 "category"

字符类

模式描述示例
[abc]匹配 a、b 或 c 中的任意一个[aeiou] 匹配元音字母
[^abc]匹配除 a、b、c 外的任意字符[^0-9] 匹配非数字
[a-z]范围:任意小写字母[a-zA-Z] 任意字母
[0-9]范围:任意数字[0-9]+ 匹配数字

分组和选择

模式描述示例
(abc)捕获组(\d+)-(\d+) 捕获两个数字
(?:abc)非捕获组(?:https?://) 分组但不捕获
a|b选择(或)猫|狗 匹配任意一个
\1引用第 1 组(\w)\1 匹配 "aa"、"bb"

常用模式

电子邮件地址

[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

URL

https?://[\w.-]+(?:/[\w./-]*)?

电话号码(中国)

\+?86?[-.\s]?1[3-9]\d{9}

日期 (YYYY-MM-DD)

\d{4}-\d{2}-\d{2}

IP 地址 (IPv4)

\b(?:\d{1,3}\.){3}\d{1,3}\b

身份证号码

\d{17}[\dXx]

标志

标志描述
i不区分大小写搜索
g全局 - 查找所有匹配项
m多行 - ^ 和 $ 匹配行首/行尾
sDotall - . 也匹配换行符

使用 Regex Data Extractor 的技巧

  1. 从简单开始,逐步增加复杂性
  2. 使用预览功能测试您的模式
  3. 当您想要字面匹配特殊字符时,使用反斜杠转义
  4. 必要时使用非贪婪量词(*?+?
  5. 使用边界情况进行测试,确保模式正常工作

使用 Regex Data Extractor,您可以直接在任何网页上应用这些模式,并精确提取您需要的数据。祝您提取顺利!

regex速查表模式教程