zoukankan      html  css  js  c++  java
  • 正则表达式的与B总结

     单词边界,是指单词与符号之间的边界,是一个位置,不是空格或字符。(这里单词可以是中文字符,英文字符,数字;
       符号可以是中文符号,英文符号,空格,制表符,换行)。不能与量词?+*{1}{2,5}等连用
    B 非单词边界,是指符号与符号,单词与单词的边界,不能与量词连用 

    举列:

    1.单词边界

    var str = ' 2 ';//其中空格与2之间的位置叫做单词边界,匹配

    2.非单词边界

    var str = ",,,,,和呵呵,,,,,";
    var reg = 'B呵B';//reg匹配中间的呵,其两侧都是字符,中间的位置为非单词边界。

    3.统计以“,”分割的元素中“3”的个数

    var test = "137,1,33,4,3,6,21,3,35,93,2,98"; 
    var count = test.match(test, "3").length; //结果:2

    4.千分位分割数字,将输出成7,654,321这样的格式

    '7654321'.replace(/B(?=(d{3})+(?!d))/g,',')
    //7,654,321(匹配末尾是非数字,中间是连续3位数字整倍数的非单词边界)
    
    '99893'.replace(/B(?=(d{3})+$)/g, ',')
    // '99,893'

    5.手机号344分割

    '12345678901'.replace(/B(?=(?:d{4})+$)/g, '-')
    // '123-4567-8901'


    参考: http://blog.csdn.net/qq_33248299/article/details/53559924
        https://segmentfault.com/q/1010000004508861
        http://www.jb51.net/article/19330.htm
        https://juejin.im/post/5964e1ca51882568d2248b61

  • 相关阅读:
    NOI2.5 4980:拯救行动
    NOI2.5 1490:A Knight's Journey
    NOI2.5 8465:马走日
    考试题目“部落卫队”
    考试题目“笨笨的西瓜种植”
    考试题目“笨笨玩游戏”
    NOI4.6 1455:An Easy Problem
    NOI2.5 1253:Dungeon Master
    NOI2.2 8758:2的幂次方表示
    NOI2.5 1817:城堡问题
  • 原文地址:https://www.cnblogs.com/mengff/p/7291190.html
Copyright © 2011-2022 走看看