Java で文字列に大文字と小文字を区別しない部分文字列が含まれているかどうかを確認する
- Java の文字列で大文字と小文字を区別しない部分文字列を検索する
-
Java で
StringUtils
を使用して文字列内の大文字と小文字を区別しない部分文字列を検索する -
文字列内で Java で
contains()
メソッドを使用して大文字と小文字を区別しない部分文字列を検索する -
文字列内で Java で
matches()
メソッドを使用して大文字と小文字を区別しない部分文字列を検索する
このチュートリアルでは、Java で文字列に部分文字列が含まれているかどうかを確認または検出する方法を紹介します。
String
は文字のシーケンスであり、文字の配列と呼ばれることもあります。Java では、String
は文字列関連のすべての操作を処理し、作業するユーティリティメソッドを提供するクラスです。
この記事では、文字列内の部分文字列を見つける方法について説明します。
サブストリングは、ストリングでもあるストリングの一部です。1つ以上の文字を持つことができます。
大文字と小文字を区別しない文字列は、小文字または大文字を気にしない文字列です。いくつかの例で理解しましょう。
Java の文字列で大文字と小文字を区別しない部分文字列を検索する
この例では、Pattern
クラスとその compile()
、matcher()
、および find()
メソッドを使用して、文字列に部分文字列が含まれているかどうかを確認しました。CASE_INSENSITIVE
を使用しました。これは、true
または false
のいずれかのブール値を返します。
以下の例を参照してください。
import java.util.regex.Pattern;
public class SimpleTesting {
public static void main(String[] args) {
String str = "DelftStack";
String strToFind = "St";
System.out.println(str);
boolean ispresent =
Pattern.compile(Pattern.quote(strToFind), Pattern.CASE_INSENSITIVE).matcher(str).find();
if (ispresent)
System.out.println("String is present");
else
System.out.println("String not found");
}
}
出力:
DelftStack
String is present
Java で StringUtils
を使用して文字列内の大文字と小文字を区別しない部分文字列を検索する
Apache Commons ライブラリを使用すると、StringUtils
クラスとその containsIgnoreCase()
メソッドを使用してサブストリングを見つけることができます。以下の例を参照してください。
このコードを実行するには、プロジェクトに Apache Commons JAR を追加する必要があります。
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String[] args) {
String str = "DelftStack";
String strToFind = "St";
System.out.println(str);
boolean ispresent = StringUtils.containsIgnoreCase(str, strToFind);
if (ispresent)
System.out.println("String is present");
else
System.out.println("String not found");
}
}
出力:
DelftStack
String is present
文字列内で Java で contains()
メソッドを使用して大文字と小文字を区別しない部分文字列を検索する
この例では、文字列クラスの contains()
メソッドを使用しました。このメソッドは、部分文字列が存在する場合に true
を返します。toLowerCase()
を使用して、最初にすべての文字を小文字に変換してから、contains()
メソッドに渡しました。
以下の例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
String str = "DelftStack";
String strToFind = "St";
System.out.println(str);
boolean ispresent = str.toLowerCase().contains(strToFind.toLowerCase());
if (ispresent)
System.out.println("String is present");
else
System.out.println("String not found");
}
}
出力:
DelftStack
String is present
文字列内で Java で matches()
メソッドを使用して大文字と小文字を区別しない部分文字列を検索する
この例では、サブストリングが存在する場合に true
を返す String
クラスの matches()
メソッドを使用しました。引数として正規表現を取ります。
以下の例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
String str = "DelftStack";
String strToFind = "St";
System.out.println(str);
boolean ispresent = str.matches("(?i).*" + strToFind + ".*");
if (ispresent)
System.out.println("String is present");
else
System.out.println("String not found");
}
}
出力:
DelftStack
String is present