是否有一个正则表达式可以捕获一个表达式的所有实例,而不管它们是否重叠?例如,/abc/def/ghi如果我想捕获所有以开头的字符串/。正则表达式(/.*)只返回整个字符串,但我希望它匹配/def/ghi和/ghi为好。
1 回答
大话西游666
TA贡献1817条经验 获得超14个赞
当然,匹配一个空字符串,然后/.*在捕获组中进行捕获之前先行查找:
Matcher m = Pattern.compile("(?=(/.*))").matcher("/abc/def/ghi");
while(m.find()) {
System.out.println(m.group(1));
}
将打印:
/abc/def/ghi
/def/ghi
/ghi
添加回答
举报
0/150
提交
取消