【Java入門】文字列メソッドを使おう!検索、置換など

投稿日: 作成:   更新:

Javaで文字列メソッド(関数)を使ってみましょう。

Javaには、Stringクラスに文字列用の便利なメソッドが用意されています。
今回は簡単に紹介したいと思います。

ソースコードを一気に覚える必要はありませんので、メソッドでどんな文字列操作ができるか、さらっと読んでもらえれば良いかと思います。

それでは行きましょう!

文字列の長さ(length)

文字の長さを表示するには、length関数を使用します。

String value = "バナナ";
System.out.println(value + "の文字の長さは" + value.length() + "です。");

実行結果:

「3」文字が取得できました。

文字の一部を取得substring

一部の文字を取得するにはsubstring関数を使用します。

Javaのsubstringの使い方が他のプログラミング言語と違います。

まず、substring指定番号の考え方のイメージから説明します。

substring指定番号の考え方

Javaの指定番号はカーソル位置に番号が付いています。

イメージを表すと、次のような図になります。

指定番号より後ろを取得

指定番号より後ろの文字を取得したい場合は、substringの第1引数のみ指定します。

次のソースコードでは「5」より後ろの文字列を取得しています。

String value = "Javaを楽しもう!";
System.out.println(value.substring(5));

実行結果:

指定番号「5」より後ろの文字列「楽しもう!」が取得できました。

「5」以降の文字列取得イメージは、次のようなになります。
黄色部分が取得できます。

範囲を取得

substringの第1引数、第2引数を指定すると、その範囲の文字列を取得できます。

次のソースコードでは、「5 ~ 9」の範囲の文字列を取得しています。

String value = "Javaを楽しもう!";
System.out.println(value.substring(5, 9));

実行結果:

「5 ~ 9」の文字列取得イメージは、次のようなになります。

このイメージを見ると、カーソルの番号で指定していることが分かりますね。
文字列自体をカウントしていると、頭が混乱します。。

文字の置換replace

文字の置換するにはreplace関数を使用します。

試しに「イチゴ」を「バナナ」に置換してみたいと思います。

String value = "イチゴが食べたい。";
System.out.println(value.replace("イチゴ", "バナナ"));

実行結果:

「バナナが食べたい。」に文字置換できました。

文字列を検索(contains)

文字列内の検索にはcontains関数を使用します。

試しに「バナナ」を文字列検索してみましょう。

String value = "バナナが入った箱";

if (value.contains("バナナ")) {
    System.out.println("バナナを見つけた!");
} else {
    System.out.println("バナナが見つからなかった・・・。");
}

実行結果:

正規表現で文字列を検索(matches)

正規表現を使って文字列検索するには、matches関数を使います。

次のソースコードでは、matches関数に数値を含む文字列を判定できる正規表現を指定しています。

String value = "12345の順番で並んでください";

if (value.matches(".*[0-9].*")) {
    System.out.println("数値を見つけた!");
} else {
    System.out.println("数値が見つからない・・・。");
}

実行結果:

数値を見つけられました。

大文字変換(toUpperCase

英語文字を大文字にするにはtoUpperCase関数を使用します。

「enjoy java!」を大文字変換してみます。

String value = "enjoy java!";
System.out.println(value.toUpperCase());

実行結果:

「ENJOY JAVA!」に大文字変換されました。

小文字変換(toLowerCase

大文字変換の反対で、英語文字を小文字にするにはtoLowerCase関数を使用します。

String value = "ENJOY JAVA!";
System.out.println(value.toLowerCase());

実行結果:

「enjoy java!」に小文字変換されました。

まとめ

今回はJavaの文字列メソッドについて、次の内容を解説しました。

  • 文字列の長さ(length)
  • 文字の一部を取得substring、カーソル番号で指定する)
  • 文字の置換contains
  • 正規表現で文字の置換matches
  • 文字列を検索(preg_match)
  • 大文字変換(toUpperCase
  • 小文字変換(toLowerCase

色々とメソッドを紹介しましたが、一気に覚える必要はありませんので何の文字列操作ができるのか理解できてればOKです。

実際にソースコードを書くときはこのページを見に来ていただけたら幸いです。