正则表达式生成器
粘贴示例文本,自动生成候选正则表达式,实时显示匹配数量。
什么是正则表达式生成器?
正则表达式(Regular Expression)是用一串特殊符号描述文本匹配规则的表达式,是开发中处理文本的利器:校验手机号、提取邮箱、替换敏感词、解析日志都离不开它。但正则语法符号多、组合复杂,从零手写容易出错。本工具采用「样本推断 + 常见模式库」的思路:你把需要匹配的示例文本粘贴进来,工具自动分析样本的字符组成(纯数字、中文、字母数字、IP 地址等),再结合手机号、邮箱、URL、日期等常用模式库,一次性生成多个候选正则,并实时统计每个候选在样本上的匹配数量。
使用上遵循「先放宽、再收紧」的原则:候选中的常见模式直接可用;推断模式默认带 ^ $ 锚点,适合做整段校验,需要提取场景时取消勾选「整段完全匹配」即可。工具完全在浏览器本地运行,示例文本不会上传服务器,可以放心粘贴敏感数据。
使用步骤
- 在「示例文本」中粘贴要匹配的内容,建议每行一个样本(如多行手机号、多个邮箱);
- 按需勾选「忽略大小写」与「整段完全匹配」选项;
- 点击「生成正则表达式」,下方列出候选正则及各自的匹配数量;
- 点击最合适的候选,正则自动填入结果框,点击「复制」按钮复制;
- 把复制的正则放入代码中,用更多真实数据验证后即可投入使用。
常见问题
正则表达式生成器是万能的吗?
不是。正则本质是描述文本规律的规则,工具根据示例样本推断字符类别与常见模式,给出的候选正则覆盖多数常见场景;复杂业务规则仍需人工调整候选再验证。
生成的候选正则前面的匹配数是什么意思?
它表示把该正则应用到你的示例文本上,能匹配到多少处内容。匹配数为 0 的候选说明与示例不符,优先选择匹配数高且描述符合需求的候选。
为什么候选里有 ^ 和 $ 符号?
^ 表示字符串开头,$ 表示字符串结尾。加上它们表示「整段文本必须完全匹配」,适合校验类场景(如判断输入是否为手机号);不需要整段匹配时删掉这两个符号即可。
候选正则可以直接用在代码里吗?
可以。复制的就是标准 JavaScript 正则表达式字面量内容,直接用于 new RegExp('...') 或 /.../ 即可;其他语言(Python、Java 等)语法基本兼容,个别字符类写法需按语言微调。