【店小二】公告:
| | |
🌟 说明文档
📌 基本字符
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
. | 匹配任意单个字符(除换行符) | a.b | aab , acb |
\d | 匹配任意一个数字字符 [0-9] | \d\d | 12 , 34 |
\D | 匹配任意一个非数字字符 [^0-9] | \D\D | ab , xy |
\w | 匹配字母、数字或下划线 [a-zA-Z0-9_] | \w\w\w | abc , 123 |
\W | 匹配任意非字母、数字或下划线字符 | \W\W | !! , @@ |
\s | 匹配空白字符(空格、制表符、换行符等) | \s | 空格, 制表符 |
\S | 匹配任意非空白字符 | \S\S\S | abc , 123 |
📏 数量限定符
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
* | 匹配前面的字符零次或多次 {0,} | a* | 空字符串, a , aa |
+ | 匹配前面的字符一次或多次 {1,} | a+ | a , aa , aaa |
? | 匹配前面的字符零次或一次 {0,1} | a? | 空字符串, a |
{n} | 匹配前面的字符恰好 n 次 | a{3} | aaa |
{n,} | 匹配前面的字符至少 n 次 | a{2,} | aa , aaa |
{n,m} | 匹配前面的字符至少 n 次,至多 m 次 | a{2,4} | aa , aaa , aaaa |
🚩 边界匹配符
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
^ | 匹配字符串的开头 | ^Hello | Hello World! 中的 Hello |
$ | 匹配字符串的结尾 | World!$ | Hello World! 中的 World! |
\b | 匹配单词边界 | \bword\b | a word is here 中的 word |
\B | 匹配非单词边界 | \Bword\B | passwords 中的 word |
🎯 分组与引用
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
() | 捕获组,将匹配的子字符串保存为一组 | (abc)+ | abc , abcabc |
(?:...) | 非捕获组,只分组不保存子字符串 | (?:abc)+ | abc , abcabc |
\n | 引用捕获组,n 为组号 | (a)(b)\1\2 | abab |
🔍 字符集与字符类
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
[abc] | 匹配 a 、b 或 c 中的任意一个字符 | [abc] | a , b , c |
[^abc] | 匹配除 a 、b 或 c 之外的任意字符 | [^abc] | d , e |
[a-z] | 匹配从 a 到 z 的任意小写字母 | [a-z] | a , b , c |
[A-Z] | 匹配从 A 到 Z 的任意大写字母 | [A-Z] | A , B , C |
[0-9] | 匹配任意数字字符 | [0-9] | 1 , 2 , 3 |
📚 常用模式示例
描述 | 正则表达式 | 示例数据 | 匹配结果 |
---|---|---|---|
📞 匹配电话号码 | \(\d{3}\) \d{3}-\d{4} | (123) 456-7890 | 匹配 |
📧 验证电子邮件地址 | ^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$ | example@example.com | 匹配 |
📅 匹配日期格式 | ^\d{4}-\d{2}-\d{2}$ | 2024-08-17 | 匹配 |
🌐 匹配IP地址 | `^((250-5 | 2[0-4]0-9 | 01?[0-9]0-9?).){3}(250-5 |
🔗 匹配URL | ^https?:\/\/[^\s/$.?#].[^\s]*$ | https://www.example.com | 匹配 |
🏷️ 匹配HTML标签 | <(\/?[^>]+)> | <div> 、</div> | 匹配 |
📮 匹配邮政编码 | ^\d{5}(-\d{4})?$ | 12345 、12345-6789 | 匹配 |
🎨 提取CSS颜色代码 | `#(a-fA-F0-9{6} | a-fA-F0-9{3})` | #ffffff 、#fff |
⚠️ 转义字符
符号 | 描述 | 示例 | 匹配内容 |
---|---|---|---|
\ | 转义字符,用于匹配具有特殊含义的字符本身 | \. | 匹配句号 . |