巴西货币删除面具正则表达式

时间:2019-07-01 22:24:00

标签: javascript jquery regex

伙计们,我有使用的这个面具(jQuery MaskMoney插件)

例如,如果我在输入中输入R $ 5.000,00并使用此RegEx应用我的函数,它将返回5000.00,我想要一个返回5000,00的Regex

$("#whatever").maskMoney({ prefix: "R$", decimal: ",", thousands: "." }); function RemoveMask(value) { var result = parseFloat(value.replace(/,/g, '.').replace(/[.](?=.*[.])/g, '').replace(/\R\$/g, '').replace(' ', '')); return result; } RemoveMask($("#whatever").val())

2 个答案:

答案 0 :(得分:0)

slice删除货币符号,然后replace去除其他货币符号:

const str = "R$5.000,00";
const res = str.slice(2).replace(/\./g, "").replace(/,/g, ".");

答案 1 :(得分:0)

尝试这个。

function RemoveMask(value) {
  value = value.replace(/\./g, "");
  return /\d+,\d+/.exec(value)[0].toString();
}

console.log(RemoveMask("R$5.000,00"));
console.log(RemoveMask("R$5.000,02"));
console.log(RemoveMask("Lorem Ipsum R$5.000,05 test"));
console.log(RemoveMask("Lorem Ipsum R$5.000,00 test"));
console.log(RemoveMask("Lorem Ipsum R$500,00 test"));
console.log(RemoveMask("Lorem Ipsum R$0,05 test"));
console.log(RemoveMask("Lorem Ipsum R$0,50 test"));