public static void main(String[] args) {
String str = "http://funds.hexun.com/2015-05-28/176237903.html";
Pattern pattern = Pattern.compile("http:\\/\\/(.*?)\\.hexun\\.com(.*?)\\.html");
Matcher matcher = pattern.matcher(str);
while (matcher.find()) {
System.out.println("Group0=:" + matcher.group(0));// 得到第0组——整个匹配
System.out.println("Group1=:" + matcher.group(1));// 得到第一组匹配——与(or)匹配的
System.out.println("Group2=:" + matcher.group(2));// 得到第二组匹配——与(ld!)匹配的,组也就是子表达式
System.out.println("Start0=:" + matcher.start(0) + " End0:="
+ matcher.end(0));// 总匹配的索引
System.out.println("Start1=:" + matcher.start(1) + " End1:="
+ matcher.end(1));// 第一组匹配的索引
System.out.println("Start2=:" + matcher.start(2) + " End2=:"
+ matcher.end(2));// 第二组匹配的索引
System.out.println(str.substring(matcher.start(0), matcher.end(1)));// 从总匹配开始索引到第1组匹配的结束索引之间子串——Wor
}
}