[Kotlin]文字列(string)の最後の文字を置換するには?

Kotlin

どうも、ちょげ(@chogetarou)です。

文字列(string)の末尾の文字を置換する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

文字列(string)の最後の文字を置換する方法は、3つあります。

replace()

1つ目は、replace()を使う方法です。

まず、文字列からreplace()を呼び出します。

そして、replace()の第1引数に「".$".toRegex()」、第2引数に置換後の文字を指定します。

//text=対象の文字列, replace=置換後の文字
val result = text.replace(".$".toRegex(), replace)

上記のreplace()は、対象の文字列(string)の末尾の文字を置換した文字列を返します。

使用例

fun main() {
    val text = "ABCDEFG"
    
    val result = text.replace(".$".toRegex(), "?")
    
    println(result)
}
出力:
ABCDE?

dropLast()

2つ目は、dropLast()を使う方法です。

まず、「+」の左辺に文字列から呼び出したdropLast()、右辺に置換後の文字を指定します。

そして、dropLast()の引数に「1」を指定します。

//text=対象の文字列, replace=置換後の文字
val result = text.dropLast(1) + replace

上記の「+」は、対象の文字列(string)の末尾を右辺の文字に置換した文字列を生成します。

使用例

fun main() {
    val text = "ABCDEFG"
    
    val result = text.dropLast(1) + "?"
    
    println(result)
}
出力:
ABCDE?

substring()

3つ目は、substring()を使う方法です。

まず、「+」の左辺に文字列から呼び出したsubstring()、右辺に置換後の文字を指定します。

そして、substring()の第1引数に「0」、第2引数に文字列のlastIndexを「−1」した値を指定します。

//text=対象の文字列, replace=置換後の文字
val result = text.substring(0, text.lastIndex - 1) + replace

上記の「+」は、対象の文字列(string)の末尾を右辺の文字に置換した文字列を生成します。

使用例

fun main() {
    val text = "ABCDEFG"
    
    val result = text.substring(0, text.lastIndex - 1) + "?"
    
    println(result)
}
出力:
ABCDE?

まとめ

文字列(string)の最後の文字を置換する方法は、次の3つです。

  • replace()を使う方法
    val result = text.replace(".$".toRegex(), replace)
  • dropLast()を使う方法
    val result = text.dropLast(1) + replace
  • substring()を使う方法
    val result = text.substring(0, text.lastIndex - 1) + replace

コメント

タイトルとURLをコピーしました