Contents
【Java】特定の文字列が含まれているか調べる方法(contains、indexOf)

この記事では、Javaで特定の文字列が含まれているかどうか調べるメソッドであるcontains、indexOfを解説します。
contains:特定の文字列を含んでいる場合、trueを返す
| contains | 特定の文字列を含んでいる場合、trueを返す |
以下のとおり、実行確認ができます。
String str1 = "Testあいうえお";
String str2 = "あいTestうえお";
String str3 = "あいうえおTest";
String str4 = "testあいうえお";
// 前方一致もtrue
System.out.println(str1.contains("Test"));
// 文字列途中もtrue
System.out.println(str2.contains("Test"));
// 後方一致もtrue
System.out.println(str3.contains("Test"));
// 大文字小文字一致していない場合はfalse
System.out.println(str4.contains("Test"));
// 実行確認
true
true
true
false
indexOf:前方から文字列を検索し、最初にヒットした文字列のインデックスを返す
| indexOf | 前方から文字列を検索し、最初にヒットした文字列のインデックスを返す。 一致文字が存在しない場合-1を返却する |
一致しない場合は-1を返すことを利用して、str1.indexOf(“Test”) >= 0にて含むかどうかの判定もできます。
String str1 = "Testあいうえお";
String str2 = "あいTestうえお";
String str3 = "あいうえおTest";
String str4 = "testあいうえお";
// 前方一致もtrue
System.out.println(str1.indexOf("Test"));
System.out.println(str1.indexOf("Test") >= 0);
// 文字列途中もtrue
System.out.println(str2.indexOf("Test"));
System.out.println(str2.indexOf("Test") >= 0);
// 後方一致もtrue
System.out.println(str3.indexOf("Test"));
System.out.println(str3.indexOf("Test") >= 0);
// 大文字小文字一致していない場合はfalse
System.out.println(str4.indexOf("Test"));
System.out.println(str4.indexOf("Test") >= 0);
// 実行結果
0
true
2
true
5
true
-1
false

Javaの記事の一覧はJava にまとめてあります
