Kotlinの文字列の始まりと終わり(先頭と末尾)を真偽値で確認するサンプルです。
startsWithメソッドとendsWithメソッドを使用します。
目次
文字の始まり | 文字の始まりを真偽値で確認する(startsWithの引数1つ) |
文字の始まりを真偽値で確認する(startsWithの引数2つ) | |
文字の終わり | 文字の終わりを真偽値で確認する(endsWith) |
文字の始まりを真偽値で確認する(startsWithの引数1つ)
public actual fun String.startsWith(検索する文字列): Boolean |
- 文字列が指定した引数で始まっていればtrueを返します。それ以外の場合はfalseを返します。
- Stringクラスのメソッドです。
fun main() {
val str1 = "あいうえお"
if (str1.startsWith("あいう")) {
println("OK") // OKが出力される
} else {
println("NG")
}
val str2 = "ABCDE"
if (str2.startsWith("abc")) {
println("OK")
} else {
println("NG") // NGが出力される
}
}
4行目は、if文とstartsWithで文字列が「あいう」で始まっているか判定し一致するのでtrueが返ります。
12行目は、英字の大文字と小文字は一致していない判定となるのでfalseになります。
文字の始まりを真偽値で確認する(startsWithの引数2つ)
public actual fun String.startsWith(検索する文字列, 開始位置): Boolean |
- 2つ目の引数は比較を開始する位置です。
- 文字列が指定した引数で始まっていればtrueを返します。それ以外の場合はfalseを返します。
- 最初の1文字目の位置は0から始まります。
startsWithメソッドの引数が2つあるサンプルです。
fun main() {
val str1 = "あいうえお"
if (str1.startsWith("あいう", 0)) {
println("OK") // OKが出力される
} else {
println("NG")
}
if (str1.startsWith("あいう", 1)) {
println("OK")
} else {
println("NG") // NGが出力される
}
if (str1.startsWith("いうえ", 1)) {
println("OK") // OKが出力される
} else {
println("NG")
}
}
4行目は、2つ目の引数が0です。文字列「あいうえお」の「あいう」と「あいう」で比較します。trueです。
10行目は、2つ目の引数が1です。文字列「あいうえお」の2文字目からで「いうえ」と「あいう」で比較します。falseになります。
16行目も、2つ目の引数が1です。文字列「あいうえお」の2文字目からで「いうえ」と「いうえ」で比較します。trueになります。
文字の終わりを真偽値で確認する(endsWith)
public boolean endsWith(String suffix) |
- 文字列が指定した引数で終わっていればtrueを返します。それ以外の場合はfalseを返します。
- Stringクラスのメソッドです。
fun main() {
val str1 = "あいうえお"
if (str1.endsWith("えお")) {
println("OK") // OKが出力される
} else {
println("NG")
}
val str2 = "ABCDE"
if (str2.endsWith("de")) {
println("OK")
} else {
println("NG") // NGが出力される
}
}
4行目は、if文とendsWithで文字列が「えお」で終わっているか判定し一致するのでtrueが返ります。
12行目は、英字の大文字と小文字は一致していない判定となるのでfalseになります。
関連の記事
[Kotlin] indexOf 文字列の位置を取得
Kotlin substring 文字列を切り出す
Kotlin trim 文字列の先頭と末尾の空白を除去