zoukankan      html  css  js  c++  java
  • 正则表达式相关汇总








    几个重要的:    .      []      *包括+ 和?        {n}       d        w
     
     
     
    .     //表示除 之外的任意的单个字符
     
    a.b   //a和b之间必须有一个字符,出了回车 之外
    a,b
     
    b..g  //b和g之间必须有两个字符,除了 以外
    baxg
    baag
     
    =================================================================
    [] 字符的筛选
     
    a[axj]b   //a和b之间只能有一个字符,这个字符只能在a到j之间的任一个
     
    aab  √
    axb  ×
    ajb  √
    abb  √
     
    axb  ×
     
     
     
    a[0123456789]b   //a和b之间只恩只能出现0到9之间的一个字符
    a10b
    a1b
    a0b
    axb
     
     
    a[0123456789abcdfe....z]b
    a[0-9]b
    a[a-z]b
     
     
    a[0-9a-zA-Z]b    //0到9,a到z,A到Z,之间任意一个字符
    a1b
    axb
    aAb
     
    非: ^  取反
     
    a[^0-9]b  表示a与b之间只能出现除了0123456789之外的任意单个字符。
     
    a[^0-9a-z]b
     
     
     
    x[aeiou]y
     
    =====================================================
    |  表示或的意思
     
     
    z|food 由于| 的优先级非常低,所以这个表达式可以匹配  z  或 food
     
    这个表达式不匹配zood
     
    (z|f)ood 才表示zood或者food
     
     
    z
    food
    zood
     
    ===========================================
    ()改变运算的优先级。
     
    提取组。
     
    =======================================
    * 限定符,表示前面的表达式出现0次或多次。
     
    zoo*    // o可以出现零次或多次   zo   zooooo
     
     
    a.*b    // .可以出现零次或多次  aaddddb匹配
     
     
     
    .
    []
    |
    ()
    *
     
     
    ================================================
    + 限定符,表示前边的表达式必须出现1次或者多次。至少得出现1次。
     
    a.+b       //+表示.必出出现一次货多次,不能出现零次
     
     
    ==================================================
    ? 限定符,表示前边的表达式必须出现0次或者1次。
     
    a.?b       //?表示.出现次数要么零次,要么一次
    ab
    axb
    agdsafdsafdab
     
     
    ? 的另外一个作用就是“终止贪婪模式”。正则表达式默认是贪婪模式。
     
    ======================================================================
    a[0-9]+b
    axb     ×
    ab ×
    a0b √
    a00b √
    a09b √
    a99999999999999999999b √
     
     
    ==========================其他限定符=====================
    {n}  限定符,限定前边的表达式必须出现n次。
    a[0-9]{10}b 必须出现10次0到9
    a1234567899b √
    ======================
    {n,} 限定符,限定前边的表达式至少出现n次,最多不限次数
     
    1[a-z]{3,}2
    1axffdsafdsafdasfdsafdsafdsafdsfdsafsdfdsfdsfdsa2
     
     
     
    ========================================
    {n,m} 限定符,限定前边的表达式至少出现n次,最多出现m次。
     
    a[0-9]{3,7}b
    a0000000b
     
    ===========================================
    .
    []
    [^]
    |
    ()
    *
    +
    ?
    {n}
     
    {n,}
    {n,m}
     
    =================================================
    ^表示的是字符串的开头,$表示字符串的结尾。
     
     
    ^ 和 $ 就表示的是字符串的两个特征。一个表示开头的特征,一个表示结尾的特征
     
     
    abcxyz
     
    ^abc.*xyz$
     
    ^abcdefg$
     
    ^abcdefg
    acxbc
     
    abcfdsafdsafdsafdasfdasfdasfds
     
     
    fdsfdsfxyz
    xyz$
     
     
     
    ===========================================
    a[0-9]b
    adb
     
      方法:d等价于[0-9]      D 等价于[^0-9]    digital:数字
     
     
     
     
     方法:s 表示所有那些空白符,不可见字符    S    就是除了s以外的所有字符。
    as*b
    ab
    a     
     
     
    =================================================
    w [0-9a-zA-Z_]  
     
    W 就是除了w之外的所有其他字符。word:表示单词字符。
     
    表示单词的边界。 (断言:只判断,不匹配。)
     
    ============================================
     
     
    下面这几种方式就可以表示任意的单个字符出现在ab之间。
    a[sS]b
    a[dD]b
    a[wW]b
  • 相关阅读:
    BSON与JSON的区别
    Zookeeper --分布式应用程序协调服务
    Stream Big Data : Storm, Spark and Samza
    Java Virtual Machine
    day1 计算机基础
    畅通工程(kruskal算法)
    The Suspects (并查集)
    The Sum of 0 for four numbers(拆解加二分思想)
    Rebranding(字母代换)
    最长公共子序列和最长公共子串
  • 原文地址:https://www.cnblogs.com/hanggegege/p/5784000.html
Copyright © 2011-2022 走看看