Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Pregunta sobre la función "preg_match"
#1
hola que tal, tengo un problema no , pero una complicacion
estoy usando la funcion preg_match para hacer una comparacion , el coigo es el siguiente :
Código:
<?php
$hola = "aA1//?¡¿¿"#!$$%****";
if (preg_match('/[a-z]?[A-Z]?[0-9]/',$hola)){
echo "correcto";
}else{ echo "incorrecto";}

?>
la cuestion seria que lo que quiero hacer es comparar que $hola solo contenga [a-z]?[A-Z]?[0-9] y si contiene caracteres que no fueran letras o numeros me devuelva incorrecto . por que ak lo que hace es comparar solo si $hola contiene [a-z]?[A-Z]?[0-9] y como los contiene me devuelve correcto y los caracteres raros son pasados _(cosa que intento evitar)
muchas gracias , por lo pronto sigo buscando en google xD .

saludos
#2
pues tendras que esperar al rey del php xD
#3
a si se aserca Mine, jejeje es el que te puede ayudar Guiño
WWW
#4
Si quieres usar la función "preg_match" tendrás q hacerlo al revés. Es decir, en lugar de pasarle los caracteres válidos, pasarle los caracteres inválidos. De esa forma, si encuentra un "$" te lo revelará. Lo malo de hacerlo así es q hay multitud de caracteres inválidos por lo q te sugiero esta idea:

Usa "preg_replace". Con esta función eliminas los caracteres q no correspondan a números y/o letras, luego comparas la cadena obtenida con la cadena original y si son distintas... pues ya sabes q contenían algún caracter "raro". Ah! y usa esta plantilla q es más correcta: /[^a-zA-Z0-9]/

Código:
$cadena = "hola mundo";
$n_cadena = preg_replace("/[^a-zA-Z0-9]/", "", $cadena);
if ($cadena == $n_cadena) {
     echo "correcto";
} else {
     echo "incorrecto";
}
El ejemplo devolverá "incorrecto" porq hay un ESPACIO.
[Imagen: firmabp.jpg][Imagen: mineenlineaentregadispo.jpg]
WWW
#5
muchas gracias mine me ha servido de maravilla preg_replace ; y estoy usando la plantilla de la exprecion que me diste. la unica modificacion que hice en el codigo y solo para algunos casos de mi formulario fue agregarle el \s . Muchas gracias nuevamente como siempre tu ayuda se ha adaptado al 100 % Gran sonrisa Gran sonrisa

[Imagen: aplauso.gif]

saludos.
#6
me alegro mauro Sonrisa Por esas manos intuyo q puedo marcar el post como solucionado.
[Imagen: firmabp.jpg][Imagen: mineenlineaentregadispo.jpg]
WWW
#7
Minenage escribió:me alegro mauro Sonrisa Por esas manos intuyo q puedo marcar el post como solucionado.
Si, pero cuando lo hagas, marcalo con MAYÚSCULAS, que llama más la atención Guiño

Gracias Guiño
WWW
#8
Si , el problema esta solucionado Gran sonrisa
#9
Pues ahora yo marco con las herramientas profesionales del Foro xD:

[Imagen: solucionado.png]
Cualquier duda, pregunta, comentario... Aquí estoy Guiño


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  [Duda] Necesito traspasar una funcion js a php midd_98 4 383 31-03-2017, 06:05 PM
Último mensaje: avdarie
  Wiki sobre Genie Posits 15 730 04-02-2017, 01:07 AM
Último mensaje: Posits
  [Duda] Opinión sobre Artisteer habacuc78 3 541 29-03-2016, 10:12 AM
Último mensaje: habacuc78
  Creando la función unzip en php luis.ml 0 283 16-08-2015, 12:57 AM
Último mensaje: luis.ml
  Enviar correos con cabaceras usando la funcion mail() torgar22 0 308 28-02-2015, 02:44 PM
Último mensaje: torgar22
  Añadir valor css sobre css externo celticslment 2 434 22-11-2014, 07:41 PM
Último mensaje: Joseahfer
  Duda sobre HTTPS othgeg 6 511 07-11-2014, 07:28 AM
Último mensaje: othgeg
Pregunta ¿Has leído sobre Squirrel Language? Aeoris 8 852 12-05-2014, 10:23 PM
Último mensaje: darklion93
  Funcion rand y mt_rand yarq 2 499 07-03-2014, 06:54 PM
Último mensaje: KeviNxDTM
  ayuda para poner logo sobre imagen de cabecera cahcnehco29 8 1,117 13-06-2013, 03:12 PM
Último mensaje: xd2xd2



Usuarios navegando en este tema: 1 invitado(s)