LoginSignup
0
1

More than 3 years have passed since last update.

任意の文字列が左から何文字目に出てくるかを出力したい

Last updated at Posted at 2020-09-14

【概要】

1.結論

2.どのように使うか

3.ここから学んだこと

1.結論

indexメソッドと、putsを使う!

2.どのように使うか

def search(str)
 puts(str.index("検索したい任意の文字列")+1)
end

となります!
こうすることで(str)が仮引数になっており任意の文字列(実引数)を取ってくる形になり戻り値(putsの中身 )が出力されます。

str.index("検索したい任意の文字列",[検索したい開始位置])
が型になります。

ここで気をつけてほしいことが2点あります。
1点目に"+1"としている部分です。配列と同じようにカウントが"0"から始まります。
2点目に最初の文字しか反応しないことです。

ex) ohmygoodness,oh!
であれば"oh"を検索した際に”0”と出力されてしまう(1点目)。そして2つ目の"oh"は認識されません(2点目)。

3.ここから学んだこと

”左から”があれば右からもあるわけでその場合は”rindex”を使用します。注意したいことが2点あります。1点目は[検索したい開始位置]は負の数が入ることです。"-1""-2"と記載します。
2点目は出力される値は先頭から数えた値になります。
また、こちらも最初の文字しか反応しない(今度は末尾のohのみ)ことです。

参考にしたサイト:
Rubyで文字列の検索をする方法:index, rindex

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1