Java regex tutorial

Java regex tutorial:

refer : http://www.mkyong.com/tutorials/java-regular-expression-tutorials/

 

几个理解点:

  (1)[^abc]:任何字符,除了 abc(否定)

   (2)  . 表示任意字符 

X? 0次或1次

        X* 0次或多次

        X+ 1次或多次

 

   (3) (.+?)  匹配任何东西

   (4) Reluctant 数量词 (勉强)

 

X?? X,一次或一次也没有

X*? X,零次或多次

X+? X,一次或多次

    从前往后匹配,从输入字符串的开始处开始,因此每次勉强地吞噬一个字符来寻找匹配,最终它们会尝试整个输入的字符串。

   (5) Greedy 数量词 (贪婪)

X? X,一次或一次也没有

        X* X,零次或多次

        X+ X,一次或多次

   读入整个串,从后往前匹配。

  (6)Possessive 数量词 (侵占)

X?+ X,一次或一次也没有

        X*+ X,零次或多次

        X++ X,一次或多次

    侵占量词始终是吞掉整个输入的字符串,尝试着一次(仅有一次)匹配。不像贪婪量词那样,侵占量词绝不会回退。

 

  (7) 捕获组:

 

捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组:

1 ((A)(B(C)))
2 (A)
3 (B(C))
4 (C)

组零始终代表整个表达式。 

(?) 开头的组是纯的非捕获 组,它不捕获文本,也不针对组合计进行计数。

 

 

捕获组作用:获得匹配结果指定组group.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值