正则表达式对我来说仍然是一个新概念,但我有一段代码困扰我,因为我花了一段时间试图弄清楚如何使用-replace正确格式化小数,以便削减一些额外的小数点。这是我正在使用的原始列表:
1.20
1.150000
1.10
1.10
1.000000
1.00
1.00
0.90
0.90
使用http://regexr.com/,我管理了这个正则表达式:(\.\d{2})(\d{4})
,替换值为$ 1,结果是:
1.20
1.15
1.10
1.10
1.00
1.00
1.00
0.90
0.90
这正是我想要的,但我不明白为什么正则表达式有效或者它是否是最干净的解决方案。根据regexr,两个捕获组都突出显示了两个带有额外小数位数的数字。'。'向前。捕获组#1将突出显示列表中每个数字的小数和前两位小数,而#2将突出显示前4位小数减去'。'在两个离群数字中。但是,我不确定如何指定捕获组1产生干净列表。
有人可以解释这个带有-replace的正则表达式是如何运作的,以及这是否是最干净的解决方案?谢谢!