Bienvenidos sean a este post, hoy veremos un metodo del tipo string.
Este metodo es muy similar al visto en este post pero con unas sutiles diferencias, en lugar de buscar un patron en particular le pasaremos un array de caracteres para ver cual es la primera coincidencia dentro del texto con el conjunto de caracteres que le informemos, pasemos a ver su sintaxis:
variable.IndexOfAny(array_char[, inicio, cantidad]);
El array de char es obligatorio pero de forma opcional podemos pasar el lugar de inicio de nuestra busqueda y la cantidad sera la especificacion de caracteres a examinar en el texto, para entender el concepto vamos un simple ejemplo y para ello haremos un nuevo archivo con el nombre indice2.cs y le agregaremos el siguiente codigo:
indice2.cs
using System;
public class Program
{
static int Main()
{
char[] arreglo={'a','e','i','o','u'};
string texto="tinchicus.com es un gran lugar para aprender!";
Console.Write("Una vocal en\n{0}\nesta en la posicion {1}\n\n",
texto, texto.IndexOfAny(arreglo));
Console.Write("Una vocal en\n{0}\nesta en la posicion {1}\n\n",
texto, texto.IndexOfAny(arreglo, 15));
Console.Write("Una vocal en\n{0}\nesta en la posicion {1}",
texto, texto.IndexOfAny(arreglo, 20, 5));
return 0;
}
}
Primero definiremos un array con todas las vocales, lo siguiente sera un texto el cual analizaremos con el metodo, a continuacion tenemos tres lineas que se encargaran de mostrtar las distintas posibles salidas de este metodo, en el primer caso mostraremos el resultado de aplicar directamente el array en el metodo, en el segundo caso le pasaremos nuevamente el array pero le diremos que comience desde la posicion 10, por ultimo haremos lo mismo pero esta vez le diremos que comience desde la posicion 20 pero que examine 5 caracteres unicamente de texto, con todo esto comentado pasemos a compilarlo y ver como es su salida:
C:\Users\tinchicus>indice2.exe
Una vocal en
tinchicus.com es un gran lugar para aprender!
esta en la posicion 1
Una vocal en
tinchicus.com es un gran lugar para aprender!
esta en la posicion 17
Una vocal en
tinchicus.com es un gran lugar para aprender!
esta en la posicion 22
C:\Users\tinchicus>
Nota: Recuerden que las posiciones pasadas y devueltas son contadas a partir de cero.
Si observan el metodo se detiene al coincidir con cualquiera de los caracteres que pasamos en el array, en el primer caso se detuvo en la segunda posicion (1) donde esta la i, en el segundo caso al comenzar de la posicion 15 se detiene en la posicion 17 donde se encuentra la letra u, en el ultimo caso ocurre lo mismo pero con la diferencia de que solo verificaremos cinco caracteres, en todos los casos nos devolvio una posicion pero si no sucediera el metodo nos devolvera un valor de -1 indicando que no hubo coincidencias, les recomiendo tomar el codigo e ir haciendo pequeñas variaciones para poder ver las distintas posiciones que devolvera.
En resumen, hoy hemos visto IndexOfAny, que es, para que sirve, como es su sintaxis, un ejemplo practico para poder verlo en accion, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.


Donación
Es para mantenimento del sitio, gracias!
$1.50
