4
respostas

Máscara para valores ("dinheiro"

Olá, Preciso criar e desfazer uma mácara usando regex para valores do tipo "dinheiro". Seria inserida a máscara ao colocar o valor no input (R$ 1000,00) e retirada para gravar na Base (1000.00).

4 respostas

Olá Laís,

Seria algo assim?

let valor = parseFloat("R$ 1.000,50".replace(".", "").replace(",", ".").replace(/[^\d\.]/g,''));

Abraços!

Seria algo assim, mas no próprio regex eu não conseguiria trocar a virgula por ponto?

Eu acho que não,

Pois no meu exemplo você está fazendo um replace de todos os caracteres que não sejam números e o ponto por vazio, o que daria para reduzir é em um replace.

"R$ 1.000,50".replace(/[^\d\,]/g, "").replace(",", ".")

assim você troca todos os caracteres que não são numeros e virgula, e depois troca a virgula por ponto.

Ok, obrigada ;)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software