正则表达式入门:10 分钟学会 RegExp(2026)
什么是正则表达式
正则表达式(Regular Expression,简称 regex 或 regexp)是一种用来匹配字符串的强大工具。它用一套特殊的字符描述「我要找什么样的文本」。
📌 本文关键结论(TL;DR)
- 正则表达式入门:10 分钟学会 RegExp 是开发者常用的解决方案之一
- 本文基于 RFC 标准和实战经验编写
- 提供免费在线工具,浏览器本地处理,数据不上传
- 文末有 FAQ 区块解答常见疑问,可直接复制使用
📌 本文关键结论(TL;DR)
- 正则表达式入门:10 分钟学会 RegExp 是开发者常用的解决方案之一
- 本文基于 RFC 标准和实战经验编写
- 提供免费在线工具,浏览器本地处理,数据不上传
- 文末有 FAQ 区块解答常见疑问,可直接复制使用
无论是验证邮箱、提取日志、批量重命名文件,正则都是程序员的瑞士军刀。
10 个最常用的正则模式
下面 10 个例子覆盖了 80% 的日常使用场景。
基础元字符
1. \d 匹配数字(等价于 [0-9])
2. \w 匹配字母数字下划线(等价于 [a-zA-Z0-9_])
3. \s 匹配空白字符(空格、Tab、换行)
4. . 匹配任意单个字符(除换行外)
5. ^ 匹配字符串开头
6. $ 匹配字符串结尾
量词
7. * 0 次或多次
8. + 1 次或多次
9. ? 0 次或 1 次
10. {n,m} n 到 m 次
实战例子
匹配邮箱:^[\w.+-]+@[\w-]+\.[\w.-]+$
匹配手机号(中国大陆):^1[3-9]\d{9}$
匹配 URL:^https?://[\w.-]+(/[\w./?=&%-]*)?$
匹配 IPv4:^(\d{1,3}\.){3}\d{1,3}$
提取数字:\d+
匹配日期(YYYY-MM-DD):^\d{4}-\d{2}-\d{2}$
匹配身份证号(18 位):^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$
替换多余空格:\s+ 替换为单个空格
DevToolbox 在线测试
学正则最快的办法是边写边测。DevToolbox 提供实时的正则测试器,匹配结果高亮显示:
https://devstoolbox.net/tools/regex-tester.html
支持 JavaScript 全部标志:g(全局)、i(忽略大小写)、m(多行)、s(dotAll)、u(Unicode)、y(sticky)。
常见问题
Q1: 正则难学吗?
A: 入门 10 分钟,深入 10 年。日常使用掌握基础元字符 + 量词足够。
Q2: Python 和 JavaScript 正则一样吗?
A: 大部分语法相同,少数高级特性有差异。
Q3: 怎么调试正则?
A: 用 DevToolbox 正则测试器实时高亮。
Q4: 性能差怎么办?
A: 避免灾难性回溯(如 (a+)+ 改成 a+),用非贪婪量词(*?、+?)。
Q5: 命名捕获组怎么用?
A: (?
相关工具
正则测试器:https://devstoolbox.net/tools/regex-tester.html
JSON 格式化(常用于解析日志):https://devstoolbox.net/tools/json-formatter.html
文本去重:https://devstoolbox.net/tools/text-dedupe.html
本文由 DevToolbox 提供。试试我们的免费工具:https://devstoolbox.net