正则中的字符集

155 阅读2分钟

前言

这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。

作者:神的孩子都在歌唱

字符集(Character Class)

在正则表达式中,方括号 [ ] 用于定义字符集(或字符类)。字符集允许你指定一组字符中的任何一个字符作为匹配的条件。下面是对方括号 [ ] 的详细解释:

  1. 定义字符集

    • []: 方括号用于定义一个字符集。字符集表示一组字符中的任意一个字符。
    • 例如,[abc] 匹配 abc 中的任何一个字符。
  2. 基本使用

    • [abc]: 匹配字符 abc
    • [0-9]: 匹配任意一个数字字符,从 09
    • [a-z]: 匹配任意一个小写字母字符,从 az
    • [A-Z]: 匹配任意一个大写字母字符,从 AZ
    • [a-zA-Z]: 匹配任意一个英文字母,不论大小写。
  3. 排除字符集

    • [^...]: 在字符集开头使用 ^ 表示排除,即匹配不在字符集中的任意字符。
    • 例如,[^abc] 匹配除了 abc 以外的任意字符。
    • [^0-9]: 匹配任何非数字字符。
  4. 字符范围

    • [a-z]: 匹配任何小写字母。
    • [0-9]: 匹配任何数字。
    • 可以组合多个范围,例如 [a-zA-Z0-9] 匹配任何字母或数字。
  5. 字符集中的特殊字符

    • -: 在字符集内用于指定字符范围。例如,[a-z] 表示从 az
    • \: 用于转义字符,特别是当你需要在字符集中包含特殊字符(如 -)时。例如,[a\-z] 匹配 a-z

示例

  1. 匹配字符集中的任意一个字符:

    • 正则表达式 [abc] 会匹配字符串 "apple" 中的 a,或者 "banana" 中的 b
  2. 排除字符集:

    • 正则表达式 [^0-9] 匹配任何非数字字符。
  3. 字符范围:

    • 正则表达式 [a-zA-Z] 匹配任意字母,不论大小写。

使用示例

  • 匹配单个字母:

    [abc]
    

    匹配 "a", "b", 或 "c" 中的任何一个字符。

  • 匹配数字:

    [0-9]
    

    匹配 "1", "5", 或 "9" 中的任何一个字符。

  • 匹配非字母字符:

    [^a-zA-Z]
    

    匹配任何不是字母的字符,例如数字、符号或空白字符。

  • 匹配字母和数字:

    [a-zA-Z0-9]
    

    匹配任意字母或数字。

总之,方括号 [ ] 在正则表达式中用于定义字符集,使得正则表达式能够匹配多个可能的字符。

作者:神的孩子都在歌唱

本人博客:blog.csdn.net/weixin_4665…

转载说明:务必注明来源,附带本人博客连接。