标志(flags)是什么?
- g (global): 不在第一个匹配处停止,而是查找整个文本中的所有匹配。
- i (ignore case): 不区分大小写。
- m (multiline): 让^和$匹配每一行的开头和结尾,而不是整个字符串。
- s (dotAll): 让.(句点)也能匹配换行符。
常用正则表达式示例
- 邮箱地址:
[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,} - 手机号码:
1[3-9]\d{9} - URL:
https?:\/\/[\w.-]+\.[a-z]{2,}[\w\/?=-]* - 仅提取中文:
[一-龥]+ - 仅提取数字:
\d+ - 合并多个空白为一个:
\s+
注意事项
本工具直接使用JavaScript的正则表达式引擎。你输入的模式和测试字符串都只在浏览器内处理, 不会发送到服务器。部分语法(例如后行断言的支持范围)可能与Python、PCRE等其他语言的正则 表达式引擎有所不同。
常见问题
如何查看捕获组?
在模式中使用括号( )即可创建捕获组。点击匹配列表中的任意一项,即可查看完整的匹配字符串以及每个捕获组提取出的值。
正则表达式写错了会怎样?
如果模式存在语法错误,状态栏会显示错误信息。请检查括号和方括号是否配对,以及特殊字符是否用反斜杠(\)进行了转义。