デジタルトレンドナビ
システム開発

2024.05.28

Javaで部分文字列を切り出す!substringメソッドの使い方

Javaで部分文字列を切り出す!substringメソッドの使い方

Webアプリケーション開発において、文字列操作は頻繁に行われる重要なタスクです。その中でも、部分文字列を切り出す処理は非常に多用されます。

Javaで部分文字列を切り出すには、Stringクラスのsubstringメソッドを使用します。


このメソッドは初心者にとって少し分かりにくいと感じられる場合もありますが、本記事では、豊富なコード例を交えながら、substringメソッドの使いこなし方を丁寧に解説していきます。

この記事でわかること

  • substringメソッドの概要
  • substringメソッドのサンプルコード

substringメソッドの概要

substringメソッドの概要

substringメソッドは、指定されたインデックス範囲から部分文字列を切り出し、新しいStringオブジェクトとして返します。メソッドの引数は以下の2つです。

  • beginIndex:部分文字列の開始位置を表すインデックス
  • endIndex:部分文字列の終了位置を表すインデックス

サンプルコード(基本編)

サンプルコード(基本編)

1. 開始位置のみを指定する場合

substringメソッドに開始位置のみを指定すると、その位置から文字列の末尾までを切り出すことができます。

String str = “Hello, world!”;
String substring = str.substring(7); // “world!”

System.out.println(substring); // 出力: world!

上記の例では、str変数の7文字目から末尾までを切り出し、substring変数に格納しています。

2. 開始位置と終了位置を指定する場合

substringメソッドに開始位置と終了位置を指定すると、その範囲内の文字列を切り出すことができます。

String str = “Hello, world!”;
String substring = str.substring(7, 12); // “world”
System.out.println(substring); // 出力: world

上記の例では、str変数の7文字目から12文字目直前までを切り出し、substring変数に格納しています。

JavaではendIndexは切り出す範囲に含まれないため、substring(7, 12)は実際には7文字目から11文字目までの文字列を切り出します。

注意点

  • インデックスは0から始まるため、最初の文字はインデックス0になります。
  • 終了位置を省略すると、開始位置から文字列の末尾までを切り出すことができます。
  • 終了位置が開始位置より小さい場合、StringIndexOutOfBoundsExceptionが投げられます。このため、終了位置は開始位置以上である必要があります。
  • 指定されたインデックスが文字列の長さを超える場合、StringIndexOutOfBoundsExceptionが発生します。

サンプルコード(応用編)

サンプルコード(応用編)

1. 特定の文字列を抽出する

String str = “This is a sample string.”;
String extractedString = str.substring(10, 16); // “sample”

System.out.println(extractedString); // 出力: sample

上記の例では、str変数から “sample” という文字列を抽出しています。

1. 文字列の末尾を切り取る

String str = “This is a long string.”;
String trimmedString = str.substring(0, str.length() – 5); // “This is a long”

System.out.println(trimmedString); // 出力: This is a long

上記の例では、str変数の末尾から5文字を切り取り、trimmedString変数に格納しています。

まとめ

まとめ

substringメソッドは、Javaにおける文字列操作の基本的な機能の一つです。

本記事で解説した内容を理解することで、様々な場面で部分文字列を切り出す処理を効率的に行うことができます。

投稿者

  • デジタルトレンドナビ編集部

    システム開発、Webサイト制作、ECサイトの構築・運用、デジタルトランスフォーメーション(DX)など、デジタルビジネスに関わる多岐の領域において、最新のトレンド情報や実践的なノウハウを発信してまいります。