如何仅计算数字中小数点后的数字?

时间:2017-09-18 17:00:15

标签: regex examdiff

我正在使用ExamDiff比较逗号后没有空格的两个* .csv文件。文件中的数字包含2到8个小数位,但我只想评估小数点后的前3位数 - 超出千分之一的数字是无关紧要的。
ExamDiff允许你使用正则表达式忽略行的某些部分,所以我正在使用:(\d{1,4}\.)来识别数字字符串(但在这些情况下也忽略它,这是好的)。 /> 这是来自csv的示例行:

  

VQ000009,B2,B3,VV,12.0000,0.23,1.0000,1.0000000000,1357.421

以下是新CSV中的可比较行:

  

VQ000009,B2,B3,VV,12.0000,0.27,1.0009,1.0000000000,1357.431

所以,在这个例子中,0.23和0.27会标记1.0000和1.0009会标志,而1357.421和1357.431会标记

1 个答案:

答案 0 :(得分:1)

该网站不清楚支持多少Boost库,但如果支持完整的PCRE,您可以使用此忽略:

(?<=\.\d{3})\d+

这表示匹配前面有.和3位数字的任何数字。请注意,如果您有VQ.123456之类的内容,456将匹配并被忽略。流浪.会导致问题。