zoukankan      html  css  js  c++  java
  • 正则的限定符 ?

     1 var str = "chapter12222";
     2 
     3     var p = /chapter[0-9]{1,2}/;
     4     console.log(p.test(str));    // true      
     5     console.log(p.exec(str));    // chapter12 可以看出只要是 chapter 后面两位数字符合 p 的要求 即可,但是要只匹配两位数字 就需要加 限定符
     6 
     7     var p1 = /chapter[1-9][0-9]/;
     8     console.log(p1.test(str));    // true 继续
     9 
    10     var p2 = /chapter[1-9][0-9]$/;
    11     console.log(p2.test(str));    // false 正确
    12 
    13     /* ?  
    14      * 第一层意思: 匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“do”或“does”中的“do”。?等价于{0,1}
    15      * 第二层意思: 当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。
    16      * 非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
    17      * 例如,对于字符串“oooo”,“o+?”将匹配单个“o”,而“o+”将匹配所有“o”。
    18      */
    19     var p3 = /chapter[1-9][0-9]??/;
    20     console.log(p3.test(str));
    21     console.log(p3.exec(str)); // chapter1
    疯癫不成狂,有酒勿可尝;世间良辰美,终成水墨白。
  • 相关阅读:
    hh
    SDUT 3923 打字
    最短路
    阶乘后面0的个数(51Nod 1003)
    大数加法
    Biorhythms(中国剩余定理)
    usaco-5.1-theme-passed
    usaco-5.1-starry-passed
    usaco-5.1-fc-passed
    usaco-4.4-frameup-passed
  • 原文地址:https://www.cnblogs.com/chuyu/p/3360854.html
Copyright © 2011-2022 走看看