Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión

 
Búsqueda Avanzada

15.707 Mensajes en 3.130 Temas- por 371 Usuarios - Último usuario: lasfirrot
Mayo 22, 2012, 07:14:38
Foro de Hispabyte.netDiseño WebHosting y Desarrollo WebHTML / XML / Javascript (Moderador: D4MR0D)Tema: Validacion n?meros reales
Páginas: [1]   Ir Abajo
Imprimir
Autor Tema: Validacion n?meros reales  (Leído 747 veces)
0 Usuarios y 2 Visitantes están viendo este tema.
k4tm41
Aprendiz
**
Mensajes: 53


Ver Perfil
« : Septiembre 28, 2005, 09:39:23 »


Buenas, quer?a validar en un campo de formulario que s?lo pudieran introducir un n?mero real entre 0 y 10. Quer?a hacerlo con expresiones regulares, permitiendo ?nicamente dos d?gitos decimales. Alguien sabe cual ser?a la expresi?n regular?

gracias
En línea
svoboda
Global Moderator
Experto
*****
Mensajes: 440



Ver Perfil
« Respuesta #1 : Septiembre 29, 2005, 09:58:21 »

La expresion regular seria [0-10]"."[0-9][0-9], es decir: un un numero entre 0 y 10 seguido de un punto seguido de un numero entre 0 y 9, y otro numero entre 0 y 9.  
 [0-10]"."[0-9]{1,2} Creo que esto reconoceria uno o dos decimales, no como el caso anterior que solo aceptaria numero reales con dos decimales

Perdon por el error, lo habia visto en ejemplos al trabajar con "flex" pero es cierto solo valen caracteres, valdria de [0-9], gracias por la correccion D4MR0D.
« Última modificación: Septiembre 30, 2005, 11:20:05 por svoboda » En línea
D4MR0D
Moderator
Miembro Imprescindible
*****
Mensajes: 1.069



Ver Perfil
« Respuesta #2 : Septiembre 30, 2005, 12:54:53 »

Las expresiones regulares funcionan por caracteres. "10" no es un caracter, son dos y no puedes ponerlo en un intervalo. La expresi?n que busca k4tm41, ser?a as?:

Código:
^\d((\.|,)\d{1,2})?$

Con esta expresi?n valdr?n todos los valores entre 0 y 9.99 con cero, uno o dos decimales y usando el punto o la coma decimal. Puedes a?adir una comprobaci?n anterior por si es exactamente 10 (si es que lo necesitas) y ya lo tienes.

Las expresiones regulares son similares, pero distintas seg?n el lenguaje que emplees. Estoy suponiendo que usar?s el objeto RegExp de javascript. Por ejemplo, en javascript no se usan comillas dobles (como hac?a svoboda) para que interprete literalmente un caracter, sino la barra invertida.

Si solo quieres permitir el punto decimal:

Código:
^\d(\.\d{1,2})?$

Si solo quieres permitir la coma decimal:

Código:
^\d(,\d{1,2})?$

---Modificado---

Estas tablas son una buena referencia para construir expresiones regulares para javascript.
« Última modificación: Septiembre 30, 2005, 12:57:45 por D4MR0D » En línea
Páginas: [1]   Ir Arriba
Imprimir
Foro de Hispabyte.netDiseño WebHosting y Desarrollo WebHTML / XML / Javascript (Moderador: D4MR0D)Tema: Validacion n?meros reales
Ir a:  


Tema diseñado por RJ-45 para Hispabyte.net basado en el
theme famouspadexx v.09 designed by Formado Comprido
Downloable here. My present to padexx.de