首页 > 技术文章 > 正则表达式

beeman 2017-10-17 21:07 原文

软件:regexbuddy

基本语法
    \d  0-9任意一个数字
    \w 任意一个字母数字,下划线
    \s 空白符
    [] 包含中括号中的任意【一个】字符
        [ab5@]:匹配a,b,5,@ 中的任意一个字符
        [f-k]:匹配f-k之间的任意一个字符
        [^A-F0-3]:匹配A-F0-3之外的任意一个字符
    注意:除了^和-之外的其他特殊符号被包含在中括号里面就失去了意义,比如$
        [\d.\-+]:匹配数字 小数点 + -
        [\s\S]:取并集
        
注意区分大小写,大写是相反的意思

匹配次数
    \d{2}:匹配2次
    \d\d{2}:匹配数字3次
    (\d\d){2}:匹配数字4次
    \d{3,6}:匹配3位到6位的数字
    贪婪模式:默认的是贪婪模式,匹配的越多越好
        
    非贪婪模式:匹配的次数越少越好 在次数后面加一个?
        \d{2-5}? 匹配2-5之间的任意一个字符,次数越少越好
    \d{2,}:最少重复2次
    //abc a5e ain dsl a445e
    ?:0次到1次  a\d?e   a和e之间有0或1个数字  a5e
    +:最少有一次    a\d+e    a和e之间至少有一个数字 a5e a445e
    *:0次或多次   a\d*e     a和e之间有0个或多个数字   a5e a445e
    
字符边界:
    \b  匹配单词的边界 不全是\w表示
    
    | 或
()分组
    ([a-z]{2})\1   重复括号里的字符(反向捕获)   dede
    

    匹配电话号码:(0\d[2,3]-\d[7,9])|1[35789]\d{9}


未完待续

   

推荐阅读