通过 Java/Kotlin 中的可重复分隔符拆分字符串

Mar*_*ark 4 java regex kotlin

我用可重复的分隔符分割一个字符串,并且也打算保留分隔符。

val str = "xxoooooooxxoxoxooooo"
val reg = Regex("(?<=x+)|(?=x+)")
var list = str.split(reg)
println(list) 
Run Code Online (Sandbox Code Playgroud)

输出是[, x, x, ooooooo, x, x, o, x, o, x, ooooo],虽然我想得到

[xx, ooooooo, xx, o, x, o, x, ooooo]

use*_*380 6

val str = "xxoooooooxxoxoxooooo"
val reg =  Regex("o+|x+").findAll(str).map { it.value }.toList()
println(reg)
//[xx, ooooooo, xx, o, x, o, x, ooooo]
Run Code Online (Sandbox Code Playgroud)