71

例如,str = 'abcdefg'c如果在这个字符串中使用 Ruby,我如何找到索引?

4

3 回答 3

120
index(substring [, offset]) → fixnum or nil
index(regexp [, offset]) → fixnum or nil

返回给定子字符串或模式 (regexp) 在 str 中第一次出现的索引。如果没有找到则返回 nil。如果存在第二个参数,它指定字符串中开始搜索的位置。

"hello".index('e')             #=> 1
"hello".index('lo')            #=> 3
"hello".index('a')             #=> nil
"hello".index(?e)              #=> 1
"hello".index(/[aeiou]/, -3)   #=> 4

查看ruby​​ 文档以获取更多信息。

于 2012-05-19T20:02:37.427 回答
27

你可以用这个

"abcdefg".index('c')   #=> 2
于 2012-05-19T19:56:42.887 回答
4
str="abcdef"

str.index('c') #=> 2 #String matching approach
str=~/c/ #=> 2 #Regexp approach 
$~ #=> #<MatchData "c">

希望能帮助到你。:)

于 2012-05-19T20:50:18.097 回答