该java.util.regex.MatcheResult接口提供方法来检索匹配的结果。
您可以使用Matcher类的toMatchResult()方法获取此接口的对象。此方法返回一个MatchResult对象,该对象表示当前匹配器的匹配状态。
此接口的end(int group)方法接受代表特定组的整数,并在指定组中最后一次匹配后返回偏移量。
import java.util.Scanner;
import java.util.regex.MatchResult;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main( String args[] ) {
String regex = "(.*)(\\d+)(.*)";
//读取用户输入
Scanner sc = new Scanner(System.in);
System.out.println("Enter input text: ");
String input = sc.nextLine();
//实例化Pattern类
Pattern pattern = Pattern.compile(regex);
//实例化Matcher类
Matcher matcher = pattern.matcher(input);
//验证是否发生匹配
if(matcher.find()) {
System.out.println("Match found");
}
MatchResult res = matcher.toMatchResult();
int end = res.end(1);
System.out.println(end);
}
}
输出结果
Enter input text:
This is a sample Text, 123
Match found
25