-1
提起我正在使用的文本字段正则表达式的数字格式文本数字格式,我已经实现了一个逗号,每3个位数后插入类似下面正则表达式|在我的网页
- 123的功能 - > 123
- 1234 - > 1,234
- 123456-> 123456
我使用下面的函数来实现这一目标。
function Comma(Num) { //function to add commas to textboxes
Num += '';
Num = Num.replace(',', ''); Num = Num.replace(',', ''); Num = Num.replace(',', '');
Num = Num.replace(',', ''); Num = Num.replace(',', ''); Num = Num.replace(',', '');
x = Num.split('.');
console.log(x);
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
console.log(x1);
console.log(x2);
var rgx = /(\d+)(\d{2})/;
while (rgx.test(x1))
x1 = x1.replace(rgx, '$1' + ',' + '$2');
console.log("x1: "+x1);
return x1 + x2;
}
<input maxlength="" class="form-control preco number" name="preco[]" onkeyup = "javascript:this.value=Comma(this.value);" required>
我想要实现什么是以下格式
- 12-> 12
- 123 - > 1,23
- 1234 - > 12,34
- 123456-> 1.234,56
你能指导我如何使用正则表达式来实现这种格式?
你能解释一下你想要的格式好一点?放置'.'和','的规则是什么? “12345678”和“123456789”会是什么? –
@SpencerWieczorek a','放在2位数后,然后在每3位数字后放一个'.'。这将是123.456,78和1.234.567,89! –