正则表达式入门指南

2024年 阅读约 12 分钟 入门教程

零基础学正则表达式,从元字符到常用模式,附在线正则测试工具,快速验证和调试正则表达式。

什么是正则表达式

正则表达式(Regular Expression)是一种用于匹配字符串中字符组合的模式。它使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。

正则表达式广泛应用于文本搜索、数据验证、字符串替换等场景。几乎所有主流编程语言都支持正则表达式。

元字符

元字符是正则表达式中具有特殊含义的字符:

.(点号):匹配任意单个字符(除换行符)。

\d:匹配数字,等价于[0-9]。

\w:匹配字母、数字和下划线,等价于[a-zA-Z0-9_]。

\s:匹配空白字符,包括空格、制表符、换行符。

^:匹配字符串的开始位置。

$:匹配字符串的结束位置。

量词

量词用于指定匹配的次数:

*:匹配前面的子表达式零次或多次。

+:匹配前面的子表达式一次或多次。

?:匹配前面的子表达式零次或一次。

{n}:匹配确定的n次。

{n,}:至少匹配n次。

{n,m}:匹配n到m次。

分组与捕获

分组使用圆括号()将多个字符组合为一个单元,可以对其应用量词或提取匹配的内容。

捕获分组:(pattern) - 匹配并捕获内容,可以通过反向引用获取。

非捕获分组:(?:pattern) - 只匹配不捕获。

前瞻断言:(?=pattern) - 匹配后面跟指定模式的位置。

后顾断言:(?<=pattern) - 匹配前面是指定模式的位置。

常用表达式

邮箱验证:^[\w.-]+@[\w.-]+\.\w{2,}$

手机号验证:^1[3-9]\d{9}$

URL匹配:^https?://[\w./?-]+$

IP地址匹配:^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$

学习建议

1. 从简单开始:先掌握基础元字符和量词,再学习高级特性。

2. 多练习:使用在线正则测试工具,实时查看匹配结果,加深理解。

3. 注意性能:复杂的正则表达式可能导致回溯过多,影响匹配性能。

4. 善用工具:使用我们的在线正则测试工具,可以快速验证和调试正则表达式。

开始使用

在线正则表达式测试工具,支持实时匹配、语法高亮和常用表达式库,帮助快速学习和调试正则表达式。