Java regexto匹配元组

Vih*_*rma 4 java regex string tuples

我需要从字符串中提取元组

例如 (1,1,A)(2,1,B)(1,1,C)(1,1,D)

并认为一些正则表达式:

String tupleRegex = "(\\(\\d,\\d,\\w\\))*";
Run Code Online (Sandbox Code Playgroud)

会工作,但它只是给了我第一个元组.什么是正确的正则表达式来匹配字符串中的所有元组.

man*_*uti 6

*从正则表达式中删除并使用以下内容迭代匹配java.util.regex.Matcher:

String input = "(1,1,A)(2,1,B)(1,1,C)(1,1,D)";
String tupleRegex = "(\\(\\d,\\d,\\w\\))";
Pattern pattern = Pattern.compile(tupleRegex);
Matcher matcher = pattern.matcher(input);
while(matcher.find()) {
    System.out.println(matcher.group());
}
Run Code Online (Sandbox Code Playgroud)

*字符是一个匹配零个或多个元组的量词.因此,您的原始正则表达式将匹配整个输入字符串.