1分でわかる文字列の一部を切り出しするsubstringの使い方【Java Stringクラス】

substring
  • このエントリーをはてなブックマークに追加
  • Pocket

Stringクラスには様々なメソッドがあるが、文字列の中の一部を切り出すこともできる。

このページではJavaで文字列の一部を切り出すために使えるsubstringについてご紹介しよう。

文字列の一部を切り出しする(substring)

substringメソッドの基本的な使い方

substringは文字列の一部を取得するためのメソッドだ。使い方も簡単だ。

文字列.substring( int biginIndex)

biginIndex → 開始インデックス(この位置にある文字は含まれる)

戻り値の型

String

内容

この文字列の部分文字列である新しい文字列を返する。

substring(int biginIndex)は、文字列からbiginIndexで指定された位置にある文字から最後までを切り取り、新しい文字列として返すメソッドだ。

サンプルコード

実行結果

サンプルコードの説明

下記がサンプルコードの内容だ。

  • [1] String型の変数messageの宣言
  • [2] 変数messageの初期化.し、文字を代入。
  • [3] substringを使用して変数messageの4文字目から最後までを取得し、変数resultへ代入。(※)
  • [4] 変数resultを出力。

4文字目は0文字から始まっているので「おはようございます。気持ちのいい朝です。」の「う」ではなく、「ご」になる。

普通、数字を数えるときは1,2,3と数えるが、Java言語では0から始まり0,1,2,3…となる。

「何文字目」という切り出す始まりの文字位置の考え方は間違えやすいので注意してほしい。この何文字目ということを「インデックス」と表現する。

substringで間を取得する方法

「○文字目から最後」という設定だけではなく、「○文字目から○文字目」という取得もできる。使い方は次の通りだ。

文字列.substring( int biginIndex,int endIndex)

  • biginIndex → 開始インデックス(この位置にある文字は含まれる)
  • endIndex → 終了インデックス(この位置にある文字は含まれない)

戻り値の型

String

内容

この文字列の部分文字列である新しい文字列を返す。

substring(int biginIndex, int endIndex)は、文字列からbiginIndexで指定された位置にある文字からendIndexまでの文字を切り取り、新しい文字列として返すメソッドだ。

ここでの注意する点は、endIndexで指定されたインデックスの文字は含まれないということだ。

「あいうえお」という文字列を「いう」という形で取り出したいと思う場合

「あいうえお」のインデックスは

あ → インデックス0

い → インデックス1

う → インデックス2

え → インデックス3

お → インデックス4

となる。

substring(1,3)は

biginIndex → 1

endIndex → 3

ということで、「いう」という新しい文字列が取得できる。

サンプルコード

実行結果

サンプルコードの説明

  • [1] String型の変数messageの宣言
  • [2] 変数messageの初期化.。文字列の代入。
  • [3] substringを使用して変数messageの0番目である「お」から4番目のひとつ前の「う」までを取得し、変数resultへ代入。
  • [4] 変数resultを出力。

substringで文字列の体裁を整える

substringメソッドは文字列から必要な部分を取り出して文字列の体裁を整える場合に使用されることも多い。

たとえば、「20160101」などの形式で入力されている文字列の体裁を年月日に変更する場合は以下のサンプルコードのようになる。

サンプルコード

実行結果

サンプルコードの説明

  • [1] String型の変数dateの宣言
  • [2] 変数dateの初期化.。文字列「20160101」の代入。
  • [3] substringを使用して変数dateの0番目である「2」から4番目のひとつ前の「6」までを取得し、変数yearへ代入。
  • [4] substringを使用して変数dateの4番目である「0」から6番目のひとつ前の「1」までを取得し、変数monthへ代入。
  • [5] substringを使用して変数dateの6番目である「0」最後までを取得し、変数dayへ代入。
  • [6] それぞれ変換した新しい文字列を組み合わせて年月日形式にした値を出力。

Stringに代入した文字列は変えることができないので、substringを使用して取り出した文字列を再度利用したい場合は、新しい文字列に代入して値を保持する必要がある。

まとめ

このページではJavaで一部の文字を切り出すsubstringメソッドについてお伝えした。

色々な場面で使う機会があるメソッドなので、細かい使い方はともかくとして、メソッド名だけは覚えておこう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する