Título: [Ayuda] Comprobar Símbolos en un string. Publicado por: **Aincrad** en 1 Noviembre 2019, 22:42 pm Hola, hoy vengo con una duda. Como podría comprobar sin un string contiene símbolos?
Ejemplo : Código: Dim Cadena as string = "asd)$%&"·!"·" En este caso los simbolos que quiero detectar son algo como estos : (https://i.ibb.co/T8hqVsN/1asd.png) Título: Re: [Ayuda] Comprobar Símbolos en un string. Publicado por: Serapis en 2 Noviembre 2019, 19:35 pm El modo más simple... usando un bucle.
Donde o bien examinas cada carácter en la cadena a probar contra la cadena de caracteres 'buscados', o cara carácter buscado contra la cadena de entrada... Código: dim buscados as string = "xyz+-*/" ejemplo: Código: buleano = funcion ContieneAlgunCaracter(string buscados, string texto) Probando los textos de ejemplo con la función: Código: Si ContieneAlgunCaracter(buscados, textoA) Salida: El texto: "buenos días y disfruten del desayuno" contiene algún carácter de estos: "xyz+-*/" El texto: "La ciudad no duerme" no contiene ningún carácter de la lista... Fíjate que si en la función intercambias los parámetros de los textos entre sí, sigue funcionando, sucede lo que decía en el párrafo al comienzo. Si el texto prohibido-buscado será inalterable en el tiempo y muy buscado, es más rentable generar un array de reconocimiento, si bien es más costoso los preparativos, es más rápido su uso, porque solo requiere recorrer la cadena donde se busca, no las dos: Código: array de bytes/chars TblBuscados(0 a 255) La misma función de antes, pero ahora le basta como parámetro el texto que se quiere revisar... Código: buleano = funcion ContieneAlgunCaracter(string texto) Este segundo método es mucho más rápido, si bien su preparativo es algo más largo y exige dos funciones... es útil cuando se usa con mucha frecuencia o los 'símbolos' prohibidos-exigidos que se buscan, no cambian con cada búsqueda. Nota que métodos como 'Contains' aunque se invocan de forma atómica, en realidad son bucles pués exige recorrer el texto para ver si contiene el texto que se busca. Las líneas de código son básicamente las mismas las instrucciones del procesador en cambio no. Título: Re: [Ayuda] Comprobar Símbolos en un string. Publicado por: ThunderCls en 4 Noviembre 2019, 16:58 pm Supongo que IndexOfAny haria el trabajo, si estas usando VB.NET seria algo como
Código
|