【发布时间】:2021-07-29 06:00:26
【问题描述】:
我收到了一些包含多个数字划分部分的大型字符串内容。
我试图以这样的方式修改内容,如果存在数字,则插入换行符。
就像这样:“1.这是一行。2.这是另一行。3.这是另外一个。”
被修改成这样的:
“1.这是一行。
2. 这是另一行。
3. 这是另外一行。”
我试过这样解决:
fun modifyText(inputStr: String):String {
val marker= listOf('1', '2', '3', '4', '5', '6', '7')
var text = ""
marker.forEach {
if (inputStr.contains(it)) {
text = inputStr.replace(it.toString(), "\n $it" )
}
}
return text
}
这仅修改了最后一个数字的部分,而不是所有内容。 以这种方式使用递归的想法:
tailrec fun modifyText(inputStr: String):String {
val marker= listOf('1', '2', '3', '4', '5', '6', '7')
var text = ""
marker.forEach {
if (inputStr.contains(it)) {
text = inputStr.replace(it.toString(), "\n $it" )
}
}
return modifyText(text)
}
but ended up "bricking" the app.
Please any solutions to how this can be achieved will be appreciated.
【问题讨论】:
标签: android string kotlin recursion