正则表达式中的字符集是指由一对方括号 []
包围的一组字符,它指示正则表达式引擎去匹配其中任何一个字符。在正则表达式中,字符集可以用来表示一组可选字符,只要目标字符串中有字符集中任何一个字符,就会发生匹配。
以下是一些正则表达式中常见的字符集及其用途的例子:
预定义字符集:
\d
:匹配任意数字,相当于[0-9]
。\D
:匹配任意非数字字符,相当于[^0-9]
。\w
:匹配任意单词字符(包括字母、数字和下划线),相当于[A-Za-z0-9_]
。\W
:匹配任意非单词字符,相当于[^A-Za-z0-9_]
。\s
:匹配任意空白字符(如空格、制表符、换页符等)。\S
:匹配任意非空白字符。
自定义字符集:
[abc]
:匹配 'a'、'b' 或 'c' 中的任意一个字符。[a-zA-Z]
:匹配任意大小写字母。[!@#$%^&*()]
:匹配括号内列出的特殊字符中的任意一个。[0-9a-fA-F]
:匹配十六进制数字,不论是小写还是大写形式。
字符范围:
[a-z0-9]
:可以写作[a-z\d]
,匹配一个小写字母或一个数字。[3-9]
:匹配从3到9之间的任意数字。
字符集的否定:
[^abc]
:匹配除了 'a'、'b' 和 'c' 之外的任何字符。
其他注意事项:
-
在字符集中如果没有放在首位或末尾,且两侧都有字符时,会被当作范围符号使用,如[a-z]
。- 如果想匹配
-
字符本身,可以在其前面加上反斜杠\
进行转义,或者将其放在字符集的开始或结束位置,如[-az]
。
通过这些字符集,您可以构造更加灵活的正则表达式模式,用于查找、替换、分割文本等操作。