例えば、 str = 'abcdefg'
。 Rubyを使用してこの文字列でc
の場合、インデックスを見つけるにはどうすればよいですか?
index(substring [, offset]) → fixnum or nil
index(regexp [, offset]) → fixnum or nil
Str内の指定された部分文字列またはパターン(regexp)の最初の出現のインデックスを返します。見つからない場合はnilを返します。 2番目のパラメーターが存在する場合、検索を開始する文字列内の位置を指定します。
"hello".index('e') #=> 1
"hello".index('lo') #=> 3
"hello".index('a') #=> nil
"hello".index(?e) #=> 1
"hello".index(/[aeiou]/, -3) #=> 4
詳細については、 Rubyドキュメント をご覧ください。
これを使用できます
"abcdefg".index('c') #=> 2
str="abcdef"
str.index('c') #=> 2 #String matching approach
str=~/c/ #=> 2 #Regexp approach
$~ #=> #<MatchData "c">
それが役に立てば幸い。 :)