正则表达式(Regular Expression,简称 regex 或 regexp)是一种强大而灵活的文本处理工具,用于描述、匹配、查找、替换和提取符合特定模式的文本字符串。它由一系列字符和特殊符号(即元字符)组成,能够高效地解决各种复杂的文本处理任务。
了解正则语法的可直接跳过本篇,点击下方链接跳转食用
13类最常用的正则表达式收录
以下是正则表达式的核心概念和基本语法元素概述:
.
, *
, +
, ?
, {}
, []
, ()
, ^
, $
, \
等,用于构建复杂的匹配规则。a
匹配文本中的字母 a
,数字 5
匹配文本中的数字 5
。.
:匹配任意单个字符(除换行符外)。*
:匹配前面紧邻的字符或子表达式零次或多次。+
:匹配前面紧邻的字符或子表达式一次或多次。?
:匹配前面紧邻的字符或子表达式零次或一次。{n}
:精确匹配前面紧邻的字符或子表达式 n 次。{n,}
:匹配前面紧邻的字符或子表达式至少 n 次。{n,m}
:匹配前面紧邻的字符或子表达式至少 n 次,至多 m 次。^
:位于表达式开头时,匹配输入字符串的开始位置;位于字符集合 [^...]
内时,表示否定,匹配任何不在集合内的字符。$
:匹配输入字符串的结束位置。\
:用于转义特殊字符,使其失去特殊含义,或者用于表示特殊序列,如 \d
(数字)、\w
(单词字符)、\s
(空白字符)等。[abc]
:匹配列表中的任何一个字符(a、b 或 c)。[a-z]
:匹配指定范围内的任意字符。[^abc]
或 [^a-z]
:匹配不在列表或范围内任何一个字符。^
:匹配字符串的开始位置。$
:匹配字符串的结束位置。\b
:匹配单词边界。\B
:匹配非单词边界。(pattern)
:将 pattern 封装为一个子表达式,可以用于重复、捕获、后向引用等。(?=pattern)
:正向预查,匹配 pattern 前的位置,但不包含 pattern 本身。(?!pattern)
:负向预查,匹配 pattern 不出现的位置。i
:忽略大小写(case-insensitive)。g
:全局搜索(global search),找到所有匹配而非仅第一个。m
:多行模式(multiline),使 ^
和 $
匹配每一行的开始和结束。正则表达式广泛应用于:
由于正则表达式的语法相对复杂,记忆所有细节可能有难度。以下是一些建议:
正则表达式虽然学习曲线较陡峭,但掌握其基础后,对于提高文本处理效率和自动化能力有着显著作用。随着实践经验的增长,理解和编写正则表达式的能力也会逐渐提升。
附相关检索内容:
正则表达式详解,10分钟学会
正则表达式RegExp
什么是正则表达式-知乎
正则表达式-哔哩哔哩
正则表达式-知乎
正则表达式(基础)-知乎
正则表达式详解-CSDN技术社区
了解更多知识请戳下: