Kotlin

【Kotlin入門】正規表現で文字列の部分置換をする

以前「フォーマットされた文字列に動的な値を差し込む」で、固定文字列の一部に動的な値を埋め込む方法を紹介しました。

【Kotlin入門】フォーマットされた文字列に動的な値を差し込むKotlin に限った話ではないですが、どのプログラム言語を使っていても文字列の中の一部分を動的に変更したい場面に遭遇します。 例えば...

今回は、文字列の中で不要な文字を除去したい場合や、一部の文字を別の文字に置換したい場合の対応をしたいと思います。

文字列操作はどの言語を使っていても必ず使う場面がくるので覚えておきたいですね。

特定の文字を置換

まずは、特定の文字を置換したいと思います。

「リラックマ」を「コリラックマ」に置換してみました。

コリラックマは幸せを感じている!?

文字を置き換えるだけなら、String の replace() メソッドで解決です。

正規表現にマッチした文字を置換

次に「#」と「?」を「♪(♪マーク)」に置換してみます。

? じゃ疑問文だし、# に至ってはハッシュタグですからね。♪ でウキウキ度を表現してみましょう。

# と ? の両方が置換されましたね。

リラックマは幸せ感じている♪キイロイトリもだよ♪

次に不要な文字を除去してみます。

特定の記号が扱えない時に除去しちゃおうってやつですね。

サンプルが強引すぎて申し訳ないですが・・・。

リラックマコリラックマキイロイトリこぐまちゃん

PHPの場合

PHP だと str_replace() で文字列の置換、正規表現を使うなら preg_replace() ですね。

str_replace() は引数に配列が指定できるので便利です。

A と C を同時にそれぞれの対象の文字列に置換できます。

aBc

まとめ

Kotlin で扱う文字列の置換について紹介しました。

外部連携が絡むと、どうしても送り合う文字列に制約があったりします。

ルールが厳しかったり、古いシステムだったりする場合ですね。

吸収の仕方は他にもいろいろとありますが、まずは単独で文字列置換できる方法を知っておくと効率アップです。