java

推荐列表 站点导航

当前位置:首页 > 脚本编程 > java >

Java利用正则表达式获取子文本的要领示例

来源:网络  作者:网友投稿  发布时间:2021-01-15 04:04
这篇文章主要先容了Java利用正则表达式获取子文本的要领,团结实例形式阐明白java针对子文本的正则操纵相关函数与...

,group(2)指的第二个括号里的对象,由此也激发了利用JavaAPI时对group(int group)、start(int group)、end(int group)不是太领略,利便其他新学的伴侣,就这个问题卡了我半天,领略matcher的group,World! in Java.; Pattern pattern = Pattern.compile(W(or)(ld!)); Matcher matcher = pattern.matcher(str); while(matcher.find()){ System.out.println(Group 0:+matcher.group(0));//获得第0组整个匹配 System.out.println(Group 1:+matcher.group(1));//获得第一组匹配与(or)匹配的 System.out.println(Group 2:+matcher.group(2));//获得第二组匹配与(ld!)匹配的, 最近进修正则表达式,当将组的观念与子表达式对应起来之后,好比Java正则表达式中的组观念与《正则表达式必知必会》一书中报告的子表达式其实是一样的,由于刚开始对Java正则表达式中的组的观念不清晰,坑爹,group(0)就是指的整个串。

group(1) 指的是第一个括号里的对象,end()所带的参数i就是正则表达式中的子表达式索引(第几个子表达式), 本来,只是表述差异罢了,发明Java中的一些术语与其他处所描写的有所差别,组也就是子表达式 System.out.println(Start 0:+matcher.start(0)+ End 0:+matcher.end(0));//总匹配的索引 System.out.println(Start 1:+matcher.start(1)+ End 1:+matcher.end(1));//第一组匹配的索引 System.out.println(Start 2:+matcher.start(2)+ End 2:+matcher.end(2));//第二组匹配的索引 System.out.println(str.substring(matcher.start(0),group是针对()来说的,start,matcher.end(1)));//从总匹配开始索引到第1组匹配的竣事索引之间子串Wor } } } 措施的运行功效为: ? 1 2 3 4 5 6 7 Group 0:World! Group 1:or Group 2:ld! Start 0:6 End 0:12 Start 1:7 End 1:9 Start 2:9 End 2:12 Wor 总结: 其实group(),start(),写到博客,导致领略坚苦。

end就完全没有障碍了。

措施如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 package cn.mingyuan.regexp.singlecharacter; import java.util.regex.Matcher; import java.util.regex.Pattern; public class GroupIndexAndStartEndIndexTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String str = Hello,。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jiaob/java/12651.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Java利用正则表达式获取子文本的要领示例

2021-01-15 编辑:网友投稿

,group(2)指的第二个括号里的对象,由此也激发了利用JavaAPI时对group(int group)、start(int group)、end(int group)不是太领略,利便其他新学的伴侣,就这个问题卡了我半天,领略matcher的group,World! in Java.; Pattern pattern = Pattern.compile(W(or)(ld!)); Matcher matcher = pattern.matcher(str); while(matcher.find()){ System.out.println(Group 0:+matcher.group(0));//获得第0组整个匹配 System.out.println(Group 1:+matcher.group(1));//获得第一组匹配与(or)匹配的 System.out.println(Group 2:+matcher.group(2));//获得第二组匹配与(ld!)匹配的, 最近进修正则表达式,当将组的观念与子表达式对应起来之后,好比Java正则表达式中的组观念与《正则表达式必知必会》一书中报告的子表达式其实是一样的,由于刚开始对Java正则表达式中的组的观念不清晰,坑爹,group(0)就是指的整个串。

group(1) 指的是第一个括号里的对象,end()所带的参数i就是正则表达式中的子表达式索引(第几个子表达式), 本来,只是表述差异罢了,发明Java中的一些术语与其他处所描写的有所差别,组也就是子表达式 System.out.println(Start 0:+matcher.start(0)+ End 0:+matcher.end(0));//总匹配的索引 System.out.println(Start 1:+matcher.start(1)+ End 1:+matcher.end(1));//第一组匹配的索引 System.out.println(Start 2:+matcher.start(2)+ End 2:+matcher.end(2));//第二组匹配的索引 System.out.println(str.substring(matcher.start(0),group是针对()来说的,start,matcher.end(1)));//从总匹配开始索引到第1组匹配的竣事索引之间子串Wor } } } 措施的运行功效为: ? 1 2 3 4 5 6 7 Group 0:World! Group 1:or Group 2:ld! Start 0:6 End 0:12 Start 1:7 End 1:9 Start 2:9 End 2:12 Wor 总结: 其实group(),start(),写到博客,导致领略坚苦。

end就完全没有障碍了。

措施如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 package cn.mingyuan.regexp.singlecharacter; import java.util.regex.Matcher; import java.util.regex.Pattern; public class GroupIndexAndStartEndIndexTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String str = Hello,。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jiaob/java/12651.shtml

相关文章

风云图片

推荐阅读

返回java频道首页