rea*_*que 5 regex jquery currency
我在stackoverflow上找到了一个正则表达式来添加','或'.' 每三个数字后,取决于您的语言.
(\d)(?=(\d\d\d)+(?!\d))
Run Code Online (Sandbox Code Playgroud)
问题是当我们达到小数点时也会发生这种情况,例如:
5487445.46878
Run Code Online (Sandbox Code Playgroud)
使用以下代码(和正则表达式)的结果是:
return number.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");
Run Code Online (Sandbox Code Playgroud)
结果如下:
5,487,445.46,878
Run Code Online (Sandbox Code Playgroud)
当我根据你的语言转换一个数字时,我正在使用这个正则表达式.例如,在荷兰语中,逗号用作分隔符,因此我执行以下操作:
return number.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1.")
Run Code Online (Sandbox Code Playgroud)
结果如何
5.487.445,46.878
Run Code Online (Sandbox Code Playgroud)
这些当然需要成为:
5,487,445.46878
Run Code Online (Sandbox Code Playgroud)
和
5.487.445,4687
Run Code Online (Sandbox Code Playgroud)
有谁知道我需要更新正则表达式忽略小数点?
您可以使用您的RegEx号码,但如果其中包含逗号或点,请先拆分您的号码。
var input = '5487445.46878';
var parts = input.split('.');
var part1 = parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");
var part2 = parts[1];
alert(part1 + '.' + part2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3679 次 |
| 最近记录: |