我在javascript上有这个整数。我想在看到一个数字>后修剪或爆炸它数字0后为0.例如:
var digit = 8001000
结果应为digit[0] = 800
和digit[1] = 1000
。
它应该在最后一个零号后找到一个大于0的数字然后切断它。它应该只从中间切出零,而不包括在数字末尾附近发现的零。
另一个更清楚的例子
var digit = 80100
结果应为digit[0] = 80
和digit[1] = 100
。因此,只要满足这些结果,无论多少个零都无关紧要。
任何答案都将非常感谢!
答案 0 :(得分:3)
您无法真正拆分数字,但可以将其转换为字符串,使用匹配匹配任意数字和尾随零,然后将值映射回数字
digit.toString().match(/[1-9]+0+/g).map(Number);
答案 1 :(得分:1)
var num = 8001000;
(''+num).match(/([^0]+0+)/g);
// returns ["800", "1000"]
将数字转换为字符串,然后查找所有出现的NOT-ZERO,后跟ZEROES。
答案 2 :(得分:0)
没有经过测试,但是regex的那个:
digit1 = digit.replace(/([0-9]*0)[1-9][0-9]*$/, "$1");
digit2 = digit.replace(/[0-9]*0([1-9][0-9]*)$/, "$1");