Ver Mensaje Individual
  #9 (permalink)  
Antiguo 01/09/2011, 11:33
Avatar de h2swider
h2swider
 
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: detectar caracteres especiales

Cita:
Iniciado por OsSk4R Ver Mensaje
La verdad, las expresiones regulares nunca fueron mi fuerte ¡No me des una complicada expresión porque puedo tardar años en leerla!
Por suerte siempre que las he tenido que usar las he usado en un nivel "básico".


Ahora bien, no comprendo como puede resultar más fácil detectar los válidos que los inválidos en este ejemplo. Si alguien me lo aclara

Según siempre he entendido...
"Una expresión regular consiste en comparar un patrón frente a un texto, para comprobar si el texto contiene lo especificado en el patrón."



Sí, en realidad puede parecer o parece que sólo se aplica a la ñ ¿pero por qué si cambias la frase "España y su olé" y pones por ejemplo é o éé... la expresión continua funcionando correctamente?
Por lo que veo, no sólo se aplica a la ñ.

Saludos,
No parece ni puede parecer, el + se lo estas aplicando solo a la ñ.

Funciona porque si encuentra un carácter invalido ya machea la regular expresión. El + esta sobrando.

Código PHP:
"/(á|é|í|ó|ú|ñ+)/"             //funciona (se le aplica solo a la ñ)
"/(á+|é+|í+|ó+|ú+|ñ+)/"  //funciona
"/(á|é|í|ó|ú|ñ)+/"             //funciona
"/(á|é|í|ó|ú|ñ)/"               //funciona 
Esto también funciona, sin embargo el == true, no esta del todo bien no te parece?
Código PHP:
$boleano true;
if(
$boleano == true){
    
// doing

__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives