驴C贸mo buscar un texto dentro de otro en Go?
Una de las tareas comunes en el trabajo con strings es la b煤squeda de texto. El m茅todo Index()
permite realizar una b煤squeda de un string dentro de otro, y retorna su posici贸n en este iniciando en 0
. En caso de no encontrase retorna -1
.
Suponiendo que tenemos un string.
serie := "Dr House especialista m茅dico"
Verificamos que el texto ista se encuentra dentro de la variable serie, despu茅s comprobamos que el indice retornado posicion
sea diferente de -1
que es el valor retornado, e imprimimos dicha posici贸n.
if posicion := strings.Index(serie, "ista"); posicion != -1 {
fmt.Println("La posicion de 'ista' es: ", posicion)
}
Obtenemos…
La posicion de 'ista' es: 17
Ahora supongamos que deseamos buscar el string “mesta”, el cual sabemos no se encuentra. A diferencia del caso anterior, el valor retornado sera -1
, por lo que podemos verificarlo de igual manera.
if posicion := strings.Index(serie, "mesta"); posicion == -1 {
fmt.Println("'mesta' no se encuentra en el string")
}
'mesta' no se encuentra en el string