给定一个字符串其中包含任意组连续字符,我们把超过3个连续相同字符的组合称作大串,请找出它们的起止位置。如:” 叽叽汪汪汪喵喵喵喵喳喳” 可分组为”叽叽”,”汪汪汪”,”喵喵喵喵”,”喳喳”,其中”汪汪汪”和”喵喵喵喵”为大串组。java语言
时间: 2023-06-18 17:05:01 浏览: 144
KMP算法字符串匹配算法介绍说明.docx
可以使用正则表达式来匹配超过3个连续相同字符的大串,然后记录它们的起止位置。以下是一个示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
String str = "叽叽汪汪汪喵喵喵喵喳喳";
Pattern pattern = Pattern.compile("(.)\\1{2,}");
Matcher matcher = pattern.matcher(str);
while (matcher.find()) {
System.out.println("起始位置:" + matcher.start() + ",结束位置:" + (matcher.end() - 1));
}
}
}
```
运行结果为:
```
起始位置:2,结束位置:4
起始位置:6,结束位置:8
起始位置:9,结束位置:12
起始位置:13,结束位置:16
```
阅读全文