给出一个输入字符串,例如
"abbbcaababbbcaaabbca"
我想将这样的字符串拆分成一组数组 "bca
""ab
""a
"和 " b
”
所以上面的例子会返回
"ab", "b", "bca", "ab", "ab", "b", "bca", "a", "ab", "bca".
我有一段 29 行的嵌套循环代码可以完成此任务(返回 ArrayList)。 但是,最好用一行正则表达式来完成这项工作。
这个任务可以用下面的方法完成吗?
stringVar.split("regEX")
最佳答案
不是单行,但您可以使用 Matcher.find
来完成有一个循环。:
ArrayList<String> result = new ArrayList<String>();
String s = "abbbcaababbbcaaabbca";
Matcher m = Pattern.compile("bca|ab|a|b").matcher(s);
while (m.find())
result.add(m.group());
关于java字符串拆分正则表达式保留定界符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26076654/