正则表达式matcher.group用法
发布时间:2020-12-13 22:33:13 所属栏目:百科 来源:网络整理
导读:本贴来自 http://hi.baidu.com/cnjsp/blog/item/f5449d824c5102b46c8119cb.html 原来,group是针对()来说的,group(0)就是指的整个串,group(1) 指的是第一个括号里的东西,group(2)指的第二个括号里的东西。 最近学习正则表达式,发现Java中的一些
本贴来自 http://hi.baidu.com/cnjsp/blog/item/f5449d824c5102b46c8119cb.html
原来,group是针对()来说的,group(0)就是指的整个串,group(1) 指的是第一个括号里的东西,group(2)指的第二个括号里的东西。
最近学习正则表达式,发现Java中的一些术语与其他地方描述的有所差异。比如Java正则表达式中的“组”概念与《正则表达式必知必会》一书中讲述的“子表达式”其实是一样的,只是表述不同而已。由此也引发了使用JavaAPI时对group(int group)、start(int group)、end(int group)不是太理解。在阅读了关于正则表达式问题:有谁用过Matcher类的group()方法没有 之后彻底明白,并写了一个小程序测试。 程序如下
程序的运行结果为: Group0:World!
总结:其实group(),start(),end()所带的参数i就是正则表达式中的子表达式索引(第几个子表达式),由于刚开始对Java正则表达式中的组的概念不清晰,导致理解困难。当将“组”的概念与“子表达式”对应起来之后,理解matcher的group,start,end就完全没有障碍了。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 浅谈vue中数据双向绑定的实现原理
- sysctl()的参数是什么?
- c# – 我可以通过编程方式启用/禁用异常?
- Ctrl+Shift+F 无法格式化xml文件
- 讲解vue-router之什么是嵌套路由
- xcode – currentPlaybackTime和NSTimer在视频播放期间启动
- fastjson jsonobject 转javaobject报错java.lang.VerifyErr
- c# – HttpClient在收到服务器的响应后无法停止流式传输
- c# – EF5 Code First:IsLoaded和.AsNoTracking()
- Windows / Linux上的Xcode开发:Mac In Cloud或VPN到Mac Mi