どうも、ちょげ(@chogetarou)です。
文字列(string)の末尾の文字を置換する方法を紹介します。
方法

文字列(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
コメント