kotlin 文字列から指定した文字列の位置を取得する
kotlinで、文字列から指定した文字列の位置を取得する手順を記述してます。「indexOf」に位置を取得したい文字列を指定します。指定した文字列が存在しない場合は「-1」が返えるので存在チェックなどにも使用できます。
環境
- OS windows11 home
- java 19.0.1
- kotlin 1.7.20-release-201
手順
文字列から指定した文字列の位置を取得するには、「indexOf」で可能です。
文字列.indexOf(文字列) // 位置は、0から開始
※値が存在しない場合は「-1」が返ります
実際に、使用してみます。
fun main() {
var str = "abcde"
println( str.indexOf("a") ) // 0
println( str.indexOf("bc") ) // 1
println( str.indexOf("f") ) // -1
str = "あいうえお"
println( str.indexOf("あ") ) // 0
println( str.indexOf("いう") ) // 1
}
取得されていることが確認できます。
また、「indexOf」は、以下の実行結果とおりに最初に見つかった位置を返します。
fun main() {
var str = "abcabc"
println( str.indexOf("a") ) // 0
println( str.indexOf("bc") ) // 1
str = "あいうあいう"
println( str.indexOf("あ") ) // 0
println( str.indexOf("いう") ) // 1
}
サロゲートペア文字
通常の2バイトで1文字で表すところを、4バイトで1文字となるサロゲートペア文字だと、取得する位置が2倍になります。
fun main() {
var str = "🙍😨😪🙈😛😼"
println( str.indexOf("🙍") ) // 0
println( str.indexOf("😨😪") ) // 2
println( str.indexOf("😪") ) // 4
}
-
前の記事
javascript URLから「#(シャープ)」以降の値を取得する 2022.12.27
-
次の記事
GAS スプレッドシートでセルの書式のみをクリアにする 2022.12.27
コメントを書く