Powershell:这个正则表达式是如何工作的?

时间:2017-08-30 12:50:24

标签: regex powershell replace

正则表达式对我来说仍然是一个新概念,但我有一段代码困扰我,因为我花了一段时间试图弄清楚如何使用-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的正则表达式是如何运作的,以及这是否是最干净的解决方案?谢谢!

0 个答案:

没有答案