如何将重复模式与Java正则表达式匹配?

joh*_*tok 4 java regex

给出以下输入字符串3481.7.1071.html

我想证实这一点

  1. 该字符串包含一个或多个数字,后跟一个句点.
  2. 字符串以html结尾.

最后,我想提取最左边的数字(即3481).

我当前的正则表达式几乎就在那里,但我无法捕获正确的组:

final Pattern p = Pattern.compile("(\\d++\\.)+html");   
final Matcher m = p.matcher("3481.7.1071.html");
if (m.matches()) {
    final String corrected = m.group(1)+"html"; // WRONG! Gives 1071.html
}
Run Code Online (Sandbox Code Playgroud)

我如何捕获第一场比赛?

jpa*_*cek 7

你可以把它考虑出来:

(\d+\.)(\d+\.)*html
Run Code Online (Sandbox Code Playgroud)