Foros del Web » Programando para Internet » Javascript »

Validar Formato Moneda $1,123.00

Estas en el tema de Validar Formato Moneda $1,123.00 en el foro de Javascript en Foros del Web. Alguien que sepa conque expresion regular puedo validar una entrada en formato de moneda? Yo tengo esta: [$]?[-+]?\d{3,5}(\.\d{1,2})? Pero no me valida si existe la ...
  #1 (permalink)  
Antiguo 14/08/2007, 13:26
 
Fecha de Ingreso: febrero-2006
Mensajes: 155
Antigüedad: 18 años, 2 meses
Puntos: 0
Pregunta Validar Formato Moneda $1,123.00

Alguien que sepa conque expresion regular puedo validar una entrada en formato de moneda?
Yo tengo esta:
[$]?[-+]?\d{3,5}(\.\d{1,2})?

Pero no me valida si existe la coma ni numeros muy grandes.

Saludos
  #2 (permalink)  
Antiguo 14/08/2007, 20:00
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Validar Formato Moneda $1,123.00

Se me ha ocurrido esta forma, ¿qué te parece? Es un poco rebuscada, la he hecho con dos posibilidades porque si no se complica bastante la cosa.

Código:
var cantidades = new Array( 
	"$1,123.00",
	"$34.05",
	"$5.22",
	"$123,123.94",
	"$1,123,123.00",
	"12,231.12",
	"12",
	"$12.123",
	"$45.1",
	"$2112.12",
	"$87212.41",
	"$1231.12.12",
	"$12,45,123.12"
);

var re1 = /^\$(((\d{1,3},)(\d{3},)*\d{3})|(\d{1,3}))\.\d{2}$/;

for( var i in cantidades ) {
	document.write( cantidades[i]+" --> "+re1.test(cantidades[i]) +"<br/>");
}

Serían estas dos partes en rojo:
/^\$(((\d{1,3},)(\d{3},)*\d{3})|(\d{1,3}))\.\d{2}$/
Y la parte de $ y la decimal en azul. Tenía el problema de que no podía dar por "$12,45,123.12" si no hacía esas dos posibilidades. Aunque también se podría poner \d{1,3} y después, opcionalmente, todo detrás.

Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 26/08/2007, 08:46
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Validar Formato Moneda $1,123.00

¿Qué te pareció? ¿Lograste una validación más cómoda?
Responde por favor.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #4 (permalink)  
Antiguo 11/08/2015, 10:02
 
Fecha de Ingreso: septiembre-2008
Mensajes: 18
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Validar Formato Moneda $1,123.00

Sé que han pasado años desde la publicación, pero siempre habrá alguien que ande urgido buscando. He creado esta expresión regular y me funciona perfectamente:

^[0-9]{1,3}([\\.][0-9]{3})*[\\,][0-9]{2}$

En este caso el separador de miles es punto, y el de decimales es la coma y permito dos decimales, si usan algo diferente sustituyan los caracteres en rojo
  #5 (permalink)  
Antiguo 11/08/2015, 10:37
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Validar Formato Moneda $1,123.00

Wolfmarel, si querías escapar al punto y a la coma, te bastaba con una barra invertida para cada caso; con dos, solo terminas escapando a la barra misma.

De cualquier modo, no debes de revivir hilos con más de 6 meses de antigüedad.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:07.