正则表达式之限定符

            我们知道正则表达式中的元字符一次一般只能匹配一个位置或一个字符,如果要匹配一个或

      零个或多个字符的时候,则需要使用限定符了。限定符就是允许特定字符或字符集合自身重复出

      现的次数。常用的限定符如下表:

           限定符

         

        接下来 

               贪婪匹配限定符

               就各个限定符做一些练习:前六种的使用方式都较为简单,是贪婪匹配的

          1、匹配“java”字符串至少两次,至多三次        

            (java){2,3}
         

           2、使用正则表达式匹配国内电话号码,区号+本地号用“-”连接


         

         3、使用正则表达式匹配以158开头的手机号码

         

                

                  懒惰匹配限定符

                 至于+、*、?就不在练习了原理其实是一样的!

             Tips:通过观察上面的表我们可以看出后六中方式只是在后面添加了一个?

                   这又是怎么一回事呢?

                     其表示尽可能少的重复字符”?“之前的限定符的重复次数,这种方式成为懒惰匹配就是

             后六中方式,前六种与之相对称为贪婪匹配。

                    懒惰匹配就是匹配尽可能少的字符,至于其具体的用法有什么不同

            以一个例子为依据:

                    1、 字符串为aaababbab时,首先我们考虑贪婪匹配的方式    a.*b

         

                 它会以a开头b结尾,尽可能多的匹配字符

                   2、考虑懒惰匹配方式a.*?b

         

                他同样以a开始b结尾,但是确实尽可能少的匹配,因此最后结果匹配到了三个

          

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值