CoderTools

正则表达式测试

测试和调试正则表达式,即时查看匹配结果

快捷模板

/ /

匹配结果

未找到匹配

                    

匹配详情

替换功能

使用 $1, $2 等表示捕获组

                        

正则表达式测试工具文档

什么是正则表达式?

正则表达式(regex)是编程中用于搜索、提取和操作文本的强大模式匹配工具。它们使用特殊字符和语法来定义可以匹配字符串的搜索模式。

正则表达式广泛用于数据验证、文本处理、日志分析和搜索替换操作。它们提供了一种简洁灵活的方式来识别文本中的模式。

如何使用此工具

  1. 选择快速模板或输入您的正则表达式模式
  2. 设置适当的标志(g表示全局,i表示忽略大小写,m表示多行)
  3. 输入或加载示例测试文本
  4. 查看实时匹配结果和详细信息
  5. 使用替换功能测试替换操作

正则表达式标志

g
全局
查找所有匹配,而不只是第一个
i
忽略大小写
不区分大小写的匹配
m
多行
^ 和 $ 匹配行边界

常用正则表达式模式

基础模式
\\d - 任意数字 (0-9)
\\w - 单词字符 (a-z, A-Z, 0-9, _)
\\s - 空白字符
. - 除换行符外的任意字符
量词
+ - 一个或多个
* - 零个或多个
? - 零个或一个
{n} - 恰好n次
锚点
^ - 行开始
$ - 行结束
\\b - 单词边界

实际示例

邮箱地址验证

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

匹配:一个或多个有效字符,然后是@,域名,以及2位以上的字母扩展名。

电话号码(美国格式)

\\(?([0-9]{3})\\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})

捕获区号、交换机号和号码,支持灵活的格式。

匹配 (555) 123-4567, 555.123.4567, 555-123-4567

URL匹配

https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)

匹配HTTP/HTTPS网址,支持可选的www前缀和各种路径格式。

匹配 https://example.com, http://www.site.org/path

强密码验证

^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d@$!%*?&]{8,}$

要求至少8个字符,包含小写、大写和数字。

匹配 Password123, MyStr0ngP@ss

高级功能

捕获组
使用括号()捕获匹配的部分用于替换
([0-9]{4})-([0-9]{2})-([0-9]{2})
前瞻/后瞻
基于前面/后面的内容进行匹配但不包含它们
(?=.*password)
非捕获组
使用(?:pattern)进行分组但不捕获
(?:http|https)://

技巧和最佳实践

  • 从简单开始,逐步增加复杂度
  • 使用全局标志(g)查找所有匹配
  • 用反斜杠(\)转义特殊字符
  • 用各种输入示例彻底测试
  • 使用捕获组进行复杂替换
  • 处理大文本时考虑性能