zoukankan      html  css  js  c++  java
  • 第三章:匹配一组字符

    3.1 匹配多个字符中的某一个:

      .可以匹配任何单个字符,如果现在只想匹配na和sa,既然想匹配出n和s,在正则表达式中,我们可以用元字符 [ 和 ] 来定义一个字符集合

      文本:  

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa.xls

        ca.xls

        na.xls

      正则表达式:

        [ns]a..xls

      结果:  

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa.xls

        ca.xls

        na.xls

      分析:

        这里使用的正则表达式以[ns]开头,这个集合将匹配字符n或s(但不匹配c或其他的字符),[ 和 ] 不匹配任何字符,它们只负责定义一个字符集合

    再看一个例子(字符集合在不需要区分字母大小写的搜索操作):

      文本:

        The phrase "regular expression" is often abbreviated as RegEx or regex

      正则表达式:

        [Rr]eg[Ee]x

      结果:

        The phrase "regular expression" is often abbreviated as RegEx or regex

    3.2 利用字符集合区间

      文本:  

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa.xls

        ca.xls

        na.xls

      正则表达式:

        [ns]a[0123456789].xls
      结果:  

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa.xls

        ca.xls

        na.xls

    注意:

      模式[0123456789]和模式[0-9]完全等价

    1. A-Z:匹配A到Z的所有大写字母

    2. a-z:匹配a到z的所有小写字母

    3. A-F:匹配A到F的所有大写字母

      "-"是连字符,是一个特殊的元字符,作为元字符的它只能出现在[]之间,在[]之外,-只是一个普通的字符,只能与-本身相匹配,在正则表达式中,-不需要被转义

    [A-Za-z0-9]:表示所有的大小写字母与数字。

    3.3 取非匹配:

      除了那个字符集合里的字符,其他字符都可以匹配

      文本:  

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa1.xls

        ca1.xls

        nam.xls

      正则表达式:

        [ns]a[^0-9].xls

      结果:

        sales.xls

        sales1.xls

        sales2.xls

        na1.xls

        sa1.xls

        ca1.xls

        nam.xls

      分析:

        [^0-9]:表示匹配任何不是数字的字符

      注意:

        ^的效果是将作用于给定字符集合中的所有字符或字符区间,而不是仅限于紧跟在^字符后的面的哪一个字符或字符区间

  • 相关阅读:
    第4月第1天 makefile automake
    第3月30天 UIImage imageWithContentsOfFile卡顿 Can't add self as subview MPMoviePlayerControlle rcrash
    第3月第27天 uitableviewcell复用
    learning uboot fstype command
    learning uboot part command
    linux command dialog
    linux command curl and sha256sum implement download verification package
    learning shell script prompt to run with superuser privileges (4)
    learning shell get script absolute path (3)
    learning shell args handing key=value example (2)
  • 原文地址:https://www.cnblogs.com/changlezhong/p/9094616.html
Copyright © 2011-2022 走看看