#8 Scalaで学ぶ文字列操作の基本

Scalaの文字列操作は、Kotlinと似た読みやすい埋め込みの書き方が使えます。この記事では、Scalaにおける文字列操作の基本を解説します。

s文字列という便利な書き方

Scalaには「s文字列」という、変数を`${}`(単純な変数名なら`$`のみ)で埋め込める書き方があります。

val greeting = s"こんにちは、$name さん"

文字列の前に`s`を付けるのが特徴です。計算式のように複雑な内容を埋め込みたい場合は、波かっこが必須になります。

val message = s"合計は${price * quantity}円です"

よく使う文字列操作

  • name.length 文字数を調べる
  • name.toUpperCase 大文字に変換する
  • name.replace("A", "B") 文字を置き換える
  • name.split(",") 指定した記号で分割する
  • name.trim 前後の空白を取り除く

ScalaはJavaの資産を活かせる言語のため、これらの多くはJavaの文字列操作とほぼ同じ書き方になります。

f文字列で書式を指定する

数値の桁数や小数点以下の表示を細かく指定したい場合は、`f`文字列が便利です。

val price = 1234.5 println(f"価格: $price%.2f円") // 価格: 1234.50円

`%.2f`のような書式指定子は、C言語系の`printf`と似た記法になっています。

raw文字列で特殊文字をそのまま扱う

バックスラッシュを含む文字列(正規表現やファイルパスなど)を扱う場合、通常の文字列だとエスケープ処理が煩雑になります。`raw`文字列を使うと、バックスラッシュをそのままの文字として扱えます。

val path = raw"C:\Users\name"

Scalaならではの注意点

`s`文字列以外にも、Scalaには`f`文字列(数値の書式を指定できる)や`raw`文字列(特殊文字をそのまま扱う)など、用途に応じた文字列の種類が用意されています。まずは基本の`s`文字列に慣れ、数値を整形して表示したい場面では`f`文字列、正規表現やパスを扱う場面では`raw`文字列、というように目的に応じて使い分けられるようになると、より読みやすいコードが書けます。

まとめ

Scalaの文字列操作は`s"..."`による埋め込みが基本です。数値の書式指定には`f"..."`、特殊文字をそのまま扱いたいときは`raw"..."`と、Scalaならではの便利な文字列の種類も活用しましょう。


本ページはプロモーションを含みます。

参考書籍(PR)

Scalaをもっと学びたい方には「実践Scala入門」がおすすめです。


PR

コードを書かずに自動化したい方へ

「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。

コメント

このブログの人気の投稿

#25 Rustで学ぶAI API(ChatGPT等)の呼び出し方の基本

#8 C++で学ぶ文字列操作の基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本