Kotlin:计算字符串中字符串的出现次数

ice*_*rit 1 kotlin kotlin-android-extensions

val string = "5 kg rice 2 kg wheat 3 kg Soya"
Run Code Online (Sandbox Code Playgroud)

上面的字符串中是否有高阶函数来计算字符串“kg”?

yca*_*not 9

最简单的方法是:

val count = s.split("kg").size - 1
Run Code Online (Sandbox Code Playgroud)

使用拆分扩展函数拆分字符串后,大小减一即可得出出现次数。

您可以在 Kotlin Playground 上测试此解决方案: https ://pl.kotl.in/y6Sciwgzk

  • 很棒的答案!简洁且正是我所需要的。真的很喜欢你解决这个问题的方式。荣誉! (3认同)

IR4*_*R42 5

fun main() {
    val s = "5 kg rice 2 kg wheat 3 kg Soya"
    val c = "\\bkg\\b".toRegex().findAll(s).count()
    println(c)
}

Run Code Online (Sandbox Code Playgroud)