如何在Java正则表达式的同一行中捕获多个匹配项
示例
import java.util.regex.*;
class PatternMatcher {
public static void main(String args[]) {
int count = 0;
// String to be scanned to find the pattern.
String content = "aaa bb aaa";
String string = "aaa";
// Create a Pattern object
Pattern p = Pattern.compile(string);
// get a matcher object
Matcher m = p.matcher(content);
while(m.find()) {
count++;
System.out.println("Match no:"+count);
System.out.println("Found at: "+ m.start()+ " - " + m.end());
}
}
}输出结果
Match no:1 Found at: 0 - 3 Match no:2 Found at: 7 - 10
注意
start()–此方法用于获取使用find()方法找到的匹配项的起始索引。
end()–此方法用于获取使用find()方法找到的匹配项的结束索引。它返回最后一个匹配字符旁边的字符索引。