java Matcher返回整个匹配

时间:2014-08-06 07:33:51

标签: java regex

我有regexcompleted"<a target="_blank" href="/Quiz/Details/290">这样的字符串中获取quizid。这是我的代码

  String regex = "href=\"[^\"]+Quiz+[^\"\\d]+(\\d+)\"";
  Pattern pattern = Pattern.compile(regex);
  Matcher matcher = pattern.matcher(sourceString);
  String quizid = matcher.group();

正则表达式是支持从我的字符串290返回completed"<a target="_blank" href="/Quiz/Details/290">,但我得到的是href="/Quiz/Details/290。我认为我的正则表达式是正确的,但我不知道为什么要返回整个文本

1 个答案:

答案 0 :(得分:0)

您需要使用Matcher#group( int )方法来获取由特定组号

捕获的字符串

所以使用:

String quizid = matcher.group(1);

而不是:

String quizid = matcher.group();

RegEx Demo