Kotlinの文字列を置換するreplace()の使い方を初心者向けにやさしく解説
生徒
「Kotlinで、文字列の中の一部を別の文字に変えたいときって、どうすればいいんですか?」
先生
「Kotlinではreplace()というメソッドを使えば、文字列の一部を別の文字や単語に置き換えることができますよ。」
生徒
「なるほど!でも実際にどう書けばいいのか教えてほしいです!」
先生
「もちろんです。それでは、replace()の使い方を順番に見ていきましょう!」
1. replace()メソッドとは?
Kotlinのreplace()(リプレイス)は、指定した文字列の中に含まれる特定の文字や単語を、別の内容に「置き換える」ための非常に強力なメソッドです。プログラミングの世界では、この操作を置換(ちかん)と呼びます。
例えば、文章の中にある「古い日付」を「新しい日付」に一括で更新したり、入力されたデータの「間違い」を正しい文字に修正したりする場合に欠かせない機能です。初心者の方でも、基本の書き方さえ覚えれば、自由自在にテキストを編集できるようになります。
イメージしてみよう
文章の中から特定の言葉を「探して」、それを消してから「新しい言葉を書き込む」という作業を、プログラムが自動で一瞬のうちに行ってくれるイメージです。
まずは、最もシンプルなプログラムの例を見てみましょう。ここでは「こんにちは」という挨拶を「こんばんは」に変えてみます。
fun main() {
// もとの文章
val greeting = "こんにちは、世界!"
// 「こんにちは」を「こんばんは」に置き換える
val newGreeting = greeting.replace("こんにちは", "こんばんは")
// 結果を表示
println(newGreeting)
}
こんばんは、世界!
このように、replace()を使うことで、元の文章を汚すことなく、新しく修正された文章を簡単に作成することができます。文字列を扱うアプリ開発において、最もよく使われる基本操作のひとつですので、ここでしっかりマスターしておきましょう。
2. 文字を置き換える基本的な使い方
Kotlinで最もよく使われるのが、特定の文字を別の文字へ置き換える基本操作です。replace()メソッドの括弧の中に「探したい文字」と「新しく入れたい文字」を順番に指定するだけで、プログラムが自動で文字列をスキャンして変換してくれます。
プログラミング未経験の方でも直感的に理解できるように、シンプルな例で解説します。例えば、間違えて入力してしまった文字を正しいものに修正するような場面をイメージしてみてください。
fun main() {
// 1. 元の文字列を用意する(「あいうえお」と定義)
val original = "あいうえお"
// 2. 「い」を探して「え」に置き換えた新しいデータを作る
// 書き方:変数名.replace("古い文字", "新しい文字")
val replaced = original.replace("い", "え")
// 3. 結果を画面に表示する
println(replaced)
}
あえうえお
ここがポイント!
このプログラムでは、元の変数 original の中身を直接書き換えているわけではありません。元のデータはそのままに、「置き換えが終わった後の新しい文字列」を新しく作って replaced という変数に保存しています。
このように、文字の一部を修正して新しいデータを作る操作は、データのクレンジングやフォーマット修正など、実務のあらゆるシーンで活用される重要な基礎テクニックです。
この基本をマスターすれば、一文字だけの修正から、後述する長い文章の編集まで、幅広いテキスト操作が自由自在に行えるようになります。
3. 単語を置き換える例
replace()メソッドの便利なところは、一文字だけではなく「単語」や「文章の塊」を丸ごと置き換えられる点にあります。例えば、資料の中にある「会社名」を書き換えたり、文章内の「地名」を別の場所へ一括修正したりする際に非常に重宝します。
プログラミング初心者の方が迷いやすいポイントとして「複数回出てくる単語はどうなるの?」という疑問がありますが、Kotlinのreplace()は標準で一致するすべての単語を置換してくれます。一つひとつ手作業で修正する必要がないため、ミスを防ぎ、効率的にデータを処理することが可能です。それでは、具体的なサンプルプログラムを見てみましょう。
fun main() {
// 1. 元の文章を用意する
val text = "東京に行きます。東京は楽しいです。東京でお土産を買います。"
// 2. 「東京」という単語をすべて「大阪」に置き換える
// 第1引数に「置換前」、第2引数に「置換後」の単語を指定します
val result = text.replace("東京", "大阪")
// 3. 実行結果を確認する
println(result)
}
大阪に行きます。大阪は楽しいです。大阪でお土産を買います。
ここを確認!
実行結果を見ると、文章の中に3回登場した「東京」が、すべて一度の操作で「大阪」に変わっているのが分かりますね。このように、対象のキーワードがどれだけ多く含まれていても、プログラムは漏れなくスキャンして一括置換を行ってくれます。名簿の敬称を一括で変更したり、定型文のキーワードを差し替えたりするシステム開発でも、この仕組みがベースとなって使われています。
この「単語置換」は、文字列操作の中でも最も利用頻度が高いテクニックの一つです。基本をしっかり押さえておきましょう。
4. スペースや記号も置き換えられる
Kotlinのreplace()メソッドが対応しているのは、一般的な「文字」や「単語」だけではありません。目に見えにくい空白(スペース)や、データの区切りに使われるカンマ(,)やスラッシュ(/)といった記号も、自由自在に置き換えることができます。
例えば、システムから出力された「カンマ区切りのデータ」を、人間が読みやすいように「スペース区切り」へ整えたい場合に非常に便利です。また、全角スペースを半角スペースに統一するなど、表記ゆれの修正にも頻繁に利用されます。
初心者向けのポイント
プログラム上では、スペースも「1文字」として扱われます。そのため、replace(" ", "-")のように書けば、空白をハイフンにつなぎ変えるといった操作も一瞬で完了します。データの整理や整形において、このテクニックは必須の知識と言えるでしょう。
それでは、具体的なサンプルプログラムで、記号の置換を体験してみましょう。ここでは、カンマで区切られた果物のリストを、スペース区切りの文章に変換してみます。
fun main() {
// 1. カンマ(,)で区切られたデータを用意する
val csvData = "りんご,みかん,バナナ"
// 2. カンマを「半角スペース」に置き換える
// 第一引数に「,」、第二引数に「 」(スペース)を指定します
val formattedText = csvData.replace(",", " ")
// 3. 変換後の結果を確認する
println(formattedText)
}
りんご みかん バナナ
このように、記号を適切な文字に置き換えるだけで、情報の見栄えが劇的に良くなります。CSV形式のデータをWEBサイトに表示したり、ユーザーが入力した電話番号のハイフンを取り除いたりするなど、実務的なアプリケーション開発の現場でも、この「記号置換」は欠かせないテクニックのひとつです。
5. 特定の文字だけ1つだけ置き換えたい場合
replaceFirst()というメソッドを使えば、最初の1つだけを置き換えることができます。
val text = "りんごとりんごとみかん"
val once = text.replaceFirst("りんご", "バナナ")
println(once)
バナナとりんごとみかん
このように、最初に見つかった「りんご」だけが「バナナ」に置き換えられています。
6. 大文字・小文字の区別に注意しよう
文字列を置き換えるときは、大文字と小文字は区別されるので注意が必要です。
val text = "Apple apple APPLE"
val result = text.replace("apple", "オレンジ")
println(result)
Apple オレンジ APPLE
この例では、「apple」だけが置き換えられています。「Apple」や「APPLE」はそのままです。
大文字・小文字を区別せずに置き換えたい場合は、少し工夫が必要ですが、まずはこの基本の仕組みを覚えましょう。
7. ユーザー入力に対して文字を置換する活用例
replace()は、ユーザーが入力した文章やデータを修正したり、禁止ワードを伏せ字にしたりするときにも活躍します。
val input = "このアプリはダメです"
val sanitized = input.replace("ダメ", "※※")
println(sanitized)
このアプリは※※です
このように、特定の言葉を別の言葉に差し替えることで、安全に文章を表示できます。アプリ開発ではよく使われるテクニックです。
Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。
基礎からわかるKotlinをAmazonで見る※ Amazon広告リンク
まとめ
Kotlinのreplace()メソッドは、文字列操作において非常に便利な機能です。文字や単語を別の内容に置き換えるだけでなく、空白や記号まで柔軟に対応できる点が特徴です。基本的な使い方を押さえれば、文章の整形、データの加工、ユーザー入力の安全な処理など、多くの場面で活用できます。特に、replaceFirst()を使うと最初の一つだけを置き換えたり、大文字小文字を意識して置換することで、より精密な文字列操作が可能です。
例えば、単語を置換して文章を変換するだけでなく、CSV形式のデータの整形や、ユーザーが入力したテキストの禁止ワードの伏せ字処理など、実務での応用範囲は広いです。文字列操作は、アプリやWebサイトのユーザー体験を向上させる基本的なテクニックの一つですので、ぜひ身につけておきたいスキルです。
また、Kotlinのreplace()は正規表現とも組み合わせることができるため、複雑なパターンの置換も簡単に実現できます。この記事で紹介した基本の置換方法を理解した上で、正規表現を活用するとさらに柔軟な文字列操作が可能になります。
サンプルプログラムまとめ
fun main() {
val text = "東京に行きます。東京は楽しいです。"
val replacedAll = text.replace("東京", "大阪")
val replacedFirst = text.replaceFirst("東京", "京都")
val csv = "りんご,みかん,バナナ"
val spaced = csv.replace(",", " ")
println(replacedAll)
println(replacedFirst)
println(spaced)
}
大阪に行きます。大阪は楽しいです。
京都に行きます。東京は楽しいです。
りんご みかん バナナ
生徒
「先生、今日replace()の使い方を学んで、文字や単語だけじゃなくて、記号やスペースまで置き換えられるってことがわかりました。」
先生
「その通りです。文字列操作の基本を押さえると、文章整形やデータ加工、ユーザー入力の安全対策まで幅広く活用できます。」
生徒
「あと、replaceFirst()を使えば最初の一つだけ置き換えられることや、大文字小文字の区別も大事だと学びました。」
先生
「その通りです。実務でも、最初の一つだけ変えたい場合や、特定のパターンだけを置換したい場合に非常に役立つテクニックです。正規表現と組み合わせるとさらに応用範囲が広がります。」
生徒
「なるほど!これで自分のアプリやプログラムで文字列を自在に操作できそうです。」
先生
「その意気です。まずは基本をしっかり身につけて、次に正規表現や高度な置換にも挑戦してみましょう。」
【未経験OK】Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験する60分
「プログラミングを始めたい」を形にする。最新言語Kotlinで楽しむ、ものづくりの第一歩。
本講座は、プログラミング経験が全くない方のためのエントリー講座です。「コードを書くってどういうこと?」という基本から、世界中で使われている最新言語Kotlin(コトリン)を使って、実際にプログラムを動かすまでを体験します。難しい理屈よりも、まずは「自分の手で動かす楽しさ」を最短距離で実感していただきます。
具体的な体験内容と環境
【つくるもの】
簡単な言葉を入力すると自動で返答してくれる「対話型ミニプログラム」や、計算を自動化する「便利ツール」をゼロから作成します。黒い画面に自分の書いた文字が表示される瞬間は、最高の感動体験です。
【開発環境】
プロのエンジニアが実際に使っている開発ツールIntelliJ IDEA(インテリジェイ)をインストールします。ボタン一つで日本語化し、初心者でも迷わず操作できる「魔法の設定」を一緒に行います。
この60分で得られる3つの体験
プロと同じ道具を揃えることで、明日から一人でもプログラミングを続けられる環境が整います。
「変数」や「型」といった難しい言葉も、身近な例え話で解説。モヤモヤをゼロにします。
Kotlinは英語に近くて読みやすいのが特徴。自分でコードを読んで、間違いを見つけるコツも伝授します。
※本講座は、パソコン操作が不安な方でも安心して受講いただける完全マンツーマンです。あなたのペースに合わせて、一つずつ丁寧に進めていきます。
Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験