我想删除货币符号,并取代逗号的数字与点使用JavaScript正则表达式。我有这样的价值;
199,00 kr
我想让它像199.00
我用了这个脚本,但它不工作的罚款。
val.replace(/[^\d]/g, '');
字符串
使用这个我能够删除货币,但它也使输出为19900
我试过这种方法
var val2 = val.replace(/,/g, '.')
var val2 = val2.replace(/[^\d]/g, '');
型
但是它的输出仍然是19900
请告诉我我做错了什么。
7条答案
按热度按时间ukxgm1gy1#
这种情况下最简单的正则表达式可以是:
字符串
sg2wtvxw2#
我建议:
字符串
gpnt7bae3#
你可能想用逗号分割字符串,然后替换每个子字符串,然后用点连接,这样你就不会在替换过程中删除逗号或点:
字符串
disho6za4#
这个版本会扫描文本中任何看起来像货币的东西,然后在上面运行replacer函数。
对于未来的边缘情况,这很容易修改。
字符串
blmhpbnm5#
一个更灵活的替代方案(不处理+/-符号):
字符串
rqcrx0a66#
您可以捕获捕获组中的数字,并匹配点和空格后跟
kr
。在开始和结束处使用word boundary\'b
。在替换中使用组1,点,组2:
$1.$2
字符串
mbjcgjjk7#
试试看npm库:
字符串