正则表达式之字符类

来源:互联网 发布:unity3d 模型闪烁 编辑:程序博客网 时间:2024/06/04 17:58

            通过前面的学习可以知道,正则表达式中元字符通常只能匹配一个位置或者字符集合中的某

     一特定的字符,一般的情况下可以使用相应的元字符匹配空白、字符、数字。可是这种功能却是太

     单调了。如果需要匹配字符集合的时候我们就需要自定义匹配的字符集合了,这就是通过字符类

     来实现的。

           字符类就是一个字符集合,他是正则表达式的"迷你"语言,在[]中进行定义的。例如[java]匹配j、a

   v、a字符中的任意一个.

           再如:[abcedfg]匹配的是a-g中的任意一个字符,不过由于这种写法的不便正则表达式引入了连接

   字符"-",上述可以写成[a-g].

           Tips:"-"只有当其不再第一个字符的时候才有意义.如果要匹配"-"那么就必须将其放在第一个字符!

                [-a]匹配"-"或则"a".

      这里有一个"^"如果在第一个字符时,表示否定整个字符类,而不是否定紧挨他的字符

            例如:[^abc]表示匹配不是a、b、c的字符

                

        有一点是需要注意的:正则表达式中的元字符在字符类中是不需要做任何特殊处理的,它仅仅表示一个

   自身的字符,在字符类[]中使用元字符是也就不需要使用转义字符.

         例如:[-.]表示匹配"-"和'.'不需要使用转义字符的.