2012-05-19 8 views

Respuesta

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

devuelve el índice de la primera aparición de la subcadena dada o patrón (expresión regular) en str. Devuelve nil si no se encuentra. Si el segundo parámetro está presente, especifica la posición en la cadena para comenzar la búsqueda.

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

Consulte ruby documents para obtener más información.

+1

solo para completar Rindex() devuelve la última aparición: Devuelve el índice de la última aparición de la subcadena o patrón (regexp) dado en str. Devuelve nil si no se encuentra. Si el segundo parámetro está presente, especifica la posición en la cadena para finalizar los caracteres de búsqueda más allá de este punto no serán considerados. [misma fuente] (http://www.ruby-doc.org/core-1.9.3/String.html) – PSR

21

Se puede usar esta

"abcdefg".index('c') #=> 2 
3
str="abcdef" 

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

Espero que ayude. :)

Cuestiones relacionadas