スライドショー

はじめてのRuby!include?で文字列を検索してみよう!

「文字列の中に指定した文字列が存在するか確認するにはどうすればいいの?」
「配列の要素に指定した文字列の値が存在するか確認するにはどうすればいいの?」

Rubyには文字列を検索するさまざまな方法が用意されていますが、このような問題に直面することがあります。

そんなときはinclude?を使用すると便利です。

ここではinclude?について、

・include?とは
・include?で文字列に指定した文字列が存在するか確認する方法
・include?で配列に指定した要素が存在するか確認する方法
・include?で正規表現は可能?

などについてわかりやすく解説していきます。

include?は文字列を検索するときに非常に便利ですので、この機会に覚えておきましょう!

include?とは

include?とは文字列や配列の要素に含まれる文字列に対して、指定した文字列が存在するか確認するときに使用します。

指定した文字列が

  • 存在した場合はTrue
  • 存在しない場合はFalse

をそれぞれ返します。

include?の書き方:

オブジェクト名.include?("検索文字列")

混同しやすいですがRubyには文字列を検索するinclude?の他にモジュールを呼び出すincludeがあります。

モジュールを呼び出すincludeについては、以下の記事で解説しています!

include?の基本を理解しよう!

ここではinclude?の使い方を見ていきましょう

include?(文字列)の使い方

String型のオブジェクトに対して指定した文字列を検索するには以下のように記述します。

サンプルプログラム:

str = "SamuraiEngineerBlog"

puts str.include?("Engineer")
puts str.include?("apple")

実行結果:

true
false

このサンプルでは文字列”SamuraiEngineerBlog”に対して、include?で”Engineer”と”apple”が存在するか?それぞれ確認しています。

“Engineer”は存在するのでTrueを”apple”は存在しないので”False”を返していることがわかりますね!

include?(配列)の使い方

配列のオブジェクトに対して指定した文字列を検索するには以下のように記述します。

fruits = ["apple", "orange", "melon"]

puts fruits.include?("orange")
puts fruits.include?("mel")

実行結果:

true
false

1つめのinclude?に指定した文字列”orange”は存在するのでTrueを2つめに指定した”mel”は配列に存在しないのでFalseを返しています。

配列をinclude?を使用して文字列検索する場合、部分的に文字列が一致してもFalseになりますので注意しましょう。

include?で正規表現は使える?

include?で正規表現や文字列の複数検索は可能でしょうか?

include?は、

  • 文字列に指定した文字列が含まれるか?
  • 配列の要素に指定した文字列が存在するか?

を確認する場合に使用します。

そのため、正規表現を使用して一致した文字列を取得したり、複数の文字列を検索することはできません。

Rubyにはinclude?の他にもRubyで文字列を検索するさまざまな方法があります。

詳しくは以下の記事を参考にしてください!

まとめ

ここでは、文字列を検索するinclude?について、

  • include?とは
  • include?で文字列に指定した文字列が存在するか確認する方法
  • include?で配列に指定した要素が存在するか確認する方法
  • include?で正規表現は可能?

などについて解説しました。

include?を使用すれば簡単に文字列チェックができますので、使い方はしっかりと理解しておきましょう。

もしinclude?の使い方を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

ヤマシタ

エンジニア歴10年のフリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、200本以上の執筆経験があります。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説