カテゴリ: Kotlin 更新日: 2025/10/23

Kotlinの文字列の部分取得!substring・take・dropの基本

Kotlinの文字列の部分取得!substring・take・dropの基本
Kotlinの文字列の部分取得!substring・take・dropの基本

先生と生徒の会話形式で理解しよう

生徒

「Kotlinで文字列の一部だけを取り出す方法ってありますか?」

先生

「はい、Kotlinではsubstringtakedropといったメソッドを使って、簡単に文字列の一部分を取り出すことができますよ。」

生徒

「それぞれの使い方を具体的に知りたいです!」

先生

「では順番に、基本的な使い方から一緒に見ていきましょう!」

1. substringメソッドの使い方とは?

1. substringメソッドの使い方とは?
1. substringメソッドの使い方とは?

Kotlinのsubstring(サブストリング)メソッドは、文字列の一部を抜き出すために使います。「ある文字列の中から、何文字目から何文字目までを取り出したい」というときに便利です。

例えば「Apple」という文字列から「pp」だけを取り出したいときに使えます。


fun main() {
    val word = "Apple"
    val part = word.substring(1, 3)
    println(part)
}

pp

substring(開始位置, 終了位置)の形式で使います。「開始位置」は含まれ、「終了位置」は含まれないのがポイントです。つまり、上記の例では1文字目(p)から3文字目(lの前)までを取り出す、という意味になります。

2. takeメソッドで先頭から指定文字数を取り出す

2. takeメソッドで先頭から指定文字数を取り出す
2. takeメソッドで先頭から指定文字数を取り出す

take(テイク)メソッドは、「先頭から〇文字だけ欲しい」というときに使う便利な方法です。たとえば、文章の冒頭だけを取り出して表示したいときなどに使います。


fun main() {
    val sentence = "KotlinProgramming"
    val head = sentence.take(6)
    println(head)
}

Kotlin

takeに渡す数字は「何文字欲しいか」を表します。take(6)とすれば、先頭から6文字をそのまま取り出せます。とてもシンプルで読みやすい構文ですね。

3. dropメソッドで先頭から〇文字を捨てる

3. dropメソッドで先頭から〇文字を捨てる
3. dropメソッドで先頭から〇文字を捨てる

drop(ドロップ)メソッドは、「先頭から〇文字を飛ばしたい」「先頭の不要な部分をスキップしたい」というときに使います。


fun main() {
    val text = "HelloWorld"
    val result = text.drop(5)
    println(result)
}

World

drop(5)とすると、先頭から5文字を「捨てて」、それ以降の文字列を取り出します。つまり、「HelloWorld」のうち「Hello」を捨てて「World」だけを表示することができます。

4. takeLast・dropLastで末尾から操作する

4. takeLast・dropLastで末尾から操作する
4. takeLast・dropLastで末尾から操作する

takedropには「末尾」から処理するバージョンもあります。それがtakeLastdropLastです。文字列の最後の数文字を使いたいときに便利です。


fun main() {
    val text = "Programming"
    println(text.takeLast(3))
    println(text.dropLast(3))
}

ing
Programm

takeLast(3)は末尾から3文字を取り出し、dropLast(3)は末尾の3文字を捨てて残りを取り出します。特定のファイル拡張子や、日付の一部を取り出すときにとても役立ちます。

5. 文字列が短すぎるとエラーになる?

5. 文字列が短すぎるとエラーになる?
5. 文字列が短すぎるとエラーになる?

substringは指定した位置に文字が存在しないとエラーになります。たとえば「abc」という3文字の文字列でsubstring(2, 5)のように、存在しない範囲を指定するとクラッシュします。

一方でtakedropは、文字数が足りなくてもエラーにならず、可能な範囲だけ処理してくれます。


fun main() {
    val str = "Hi"
    println(str.take(10))  // "Hi" のまま
    println(str.drop(10))  // 空文字になる
}

Hi

このように、takedropはとても安全なメソッドです。入力文字列がどんな長さでも問題なく動作するので、初心者でも安心して使えます。

6. 実生活の例で考える文字列の部分取得

6. 実生活の例で考える文字列の部分取得
6. 実生活の例で考える文字列の部分取得

たとえば「こんにちは、田中さん」という文字列があったとき、「田中さん」だけを取り出したい場合、名前の始まり位置がわかっていればsubstringで取り出せます。


fun main() {
    val greeting = "こんにちは、田中さん"
    val name = greeting.substring(6)
    println(name)
}

田中さん

substring(6)のように、開始位置だけを指定すると、そこから最後までを取り出せます。

7. 文字列操作の基本をマスターしよう

7. 文字列操作の基本をマスターしよう
7. 文字列操作の基本をマスターしよう

Kotlinでの文字列操作は、プログラミングにおいて非常に重要な基本スキルです。データの中から必要な部分だけを抜き出すことは、どんなアプリを作るときでも役に立ちます。

今回紹介したsubstringtakedropの3つの使い方は、文字列を扱う場面でとてもよく登場します。

慣れないうちは、実際にいろんな文字列で試してみるのが一番です。「名前だけを取り出す」「日付の年だけを抜き出す」「ファイルの拡張子を取り除く」など、自分の身近な例で練習してみましょう。

関連記事:
カテゴリの一覧へ
新着記事
Go言語の関数でエラーハンドリングする基本的な方法
Go言語のスライス・マップ・配列をまとめて比較してみよう!初心者でもわかる使い分けの基本
Go言語の条件分岐の見やすい書き方を徹底解説!初心者でもわかるif文の使い方
Go言語とは何か?初心者向けに特徴・できること・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.3
Java&Spring記事人気No3
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!