如何在kotlin中替换所有出现的子字符串

Abh*_*osh 9 kotlin

如何用Kotlin中的其他东西替换字符串的一部分?

例如,通过将"早晨"替换为"夜晚",将"早上好"改为"晚安"

Ron*_*kar 18

fun main(args: Array<String>) {
  var a = 1
  // simple name in template:
  val s1 = "a is $a" 

  a = 2
  // arbitrary expression in template:
  val s2 = "${s1.replace("is", "was")}, but now is $a"
  println(s2)
}
Run Code Online (Sandbox Code Playgroud)

OUPUT: a是1,但现在是2


luk*_*kle 7

"Good Morning".replace("Morning", "Night")
Run Code Online (Sandbox Code Playgroud)

Kotlin标准库API参考中搜索函数总是很有用的.在这种情况下,您可以在Kotlin.text中找到替换函数:

/**
 * Returns a new string with all occurrences of [oldChar] replaced with [newChar].
 */
public fun String.replace(oldChar: Char, newChar: Char, ignoreCase: Boolean = false): String {
    if (!ignoreCase)
        return (this as java.lang.String).replace(oldChar, newChar)
    else
        return splitToSequence(oldChar, ignoreCase ignoreCase).joinToString(separator = newChar.toString())
}
Run Code Online (Sandbox Code Playgroud)