使用 Java 和 Regex 解析随机字符串以查找重复序列。
考虑字符串:
aaabbaaacccbb
我想找到一个正则表达式来找到上面字符串中的所有匹配项:
aaabbaaacccbb
^^^ ^^^
aaabbaaacccbb
^^ ^^
什么是正则表达式,它将检查字符串中是否有任何重复的字符序列,并返回这些重复字符的组,例如第 1 组 = aaa 和第 2 组 = bb。另请注意,我使用了一个示例字符串,但任何重复字符都是有效的: 罗恩乔乔 ……、、、、……、、
最佳答案
这样做:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
public static void main(String[] args) {
String s = "aaabbaaacccbb";
find(s);
String s1 = "RonRonRonJoeJoe .... ,,,,";
find(s1);
System.err.println("---");
String s2 = "RonBobRonJoe";
find(s2);
}
private static void find(String s) {
Matcher m = Pattern.compile("(.+)\\1+").matcher(s);
while (m.find()) {
System.err.println(m.group());
}
}
}
输出:
aaa
bb
aaa
ccc
bb
RonRonRon
JoeJoe
....
,,,,
---
关于java - 如何使用 Java Regex 查找字符串中所有重复的字符序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10287685/