Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: samur88 en 6 Junio 2009, 15:55 pm



Título: Otra forma de validar precio con expresiones regulares
Publicado por: samur88 en 6 Junio 2009, 15:55 pm
Muy buenas

Tengo el siguiente problema, tengo un campo precio que solo acepte 5 dígitos numéricos  y vayan desde el 1, al 99999.

He hecho lo siguiente:

Código:
$patronp = "^[1-9]{1}[0-9]{0,4}$";
echo eregi($patronp,"12345")

Funciona pero veo que el patrón ese es un poco cutre, me gustaría saber si hay otra forma de decir que el primer dígito que contenga la cadena no pueda ser un 0.

Un saludo



Título: Re: Otra forma de validar precio con expresiones regulares
Publicado por: ‭lipman en 6 Junio 2009, 16:16 pm
Otra forma seria, sabiendo que tienes un numero XXXXX, para saber que no tienen ningún cero delante, puedes hacerlo con un if para que devuelva true si el número introduce es mayor que 10000. Si tiene algun cero delante, devolverá falso porque seria inferior a 10000.

Pero sinceramente, me gusta mas como lo has dejado tu, solo te pongo otro metodo =P


Título: Re: Otra forma de validar precio con expresiones regulares
Publicado por: samur88 en 6 Junio 2009, 16:58 pm
Gracias por el método que me has dado, pero yo lo que estoy buscando es una expresión regular que me lo haga todo, es decir que el patrón tenga algo así que diga que el primer dígito no pueda ser 0, es mas que nada para saberlo.

Saludos


Título: Re: Otra forma de validar precio con expresiones regulares
Publicado por: luiggy2 en 7 Junio 2009, 00:04 am
podrías hacerlo con un substr. Pero tendrias que usar un if de todas formas.


Saludos!


Título: Re: Otra forma de validar precio con expresiones regulares
Publicado por: samur88 en 10 Junio 2009, 00:51 am
Gracias, aunque lo buscaba era hacerlo con expresiones regulares, pero si habría una expresión que dijera que al principio de la cadena no puede contener un carácter dado, pero creo que la única forma de hacerlo es con el código ese.

Un saludo