文字列に特定のパターンやキーワードが含まれているかを簡単に確認するには、contains()
メソッドを使用します。
contains()
は、特定の文字列が別の文字列の中に存在するかどうかを確認するためのメソッドです。戻り値は真偽値(trueまたはfalse)となります。もし探す文字列が文字列の中に存在する場合はtrue
、存在しない場合はfalse
を返します。
利用場面
- ユーザーからの入力値に特定のキーワードが含まれているかの確認。
- テキストデータの中から特定の情報を抜き出す際の前処理として。
先頭「I」から文字列「Dart」が含まれているか検索します。結果 trueとなります。ただし大文字・小文字を区別するため「dart」の場合は、結果 falseとなります。
String text = "I am learning Dart language.";
bool result = text.contains("Dart");
print(result); // 結果: true
文字列「dart」で検索する場合、そのままでは結果 falseとなります。大文字・小文字を区別しない場合は、正規表現を使います。caseSensitiveをfalseにすると大文字・小文字を区別しないため、結果 trueとなります。
String text = "I am learning Dart language.";
bool result = text.contains(RegExp('dart', caseSensitive: false));
print(result); // 結果: true
開始位置は、0番から始まります。そのため1番目は「b」となり、結果 falseとなる。
String text = "abc";
bool result = text.contains("a", 1); // 結果: false
print(result);
contains()
は、文字列の中に特定のキーワードやフレーズが存在するかを瞬時に確認するためのメソッドです。シンプルながら非常に有用で、日常的なプログラミング作業で頻繁に利用されます。