import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
public static void main(String[] args) {
String a ="12341234";
String regex="^(\\d+?)\\1$";
Pattern p=Pattern.compile(regex);
Matcher matcher = p.matcher(a);
while(matcher.find()) {
System.out.println(matcher.group(1));
}
}
}
Run Code Online (Sandbox Code Playgroud)
通过使用Matcher和上面的正则表达式,我得到任何重复.但是,我只想重复2或更大的重复.当我尝试做正则表达式时
^(\\d+?){2,100}\\1$
Run Code Online (Sandbox Code Playgroud)
,即使在长度2和100之间有重复,我执行程序时也没有返回任何内容.我做错了什么?