正则表达式忽略超越比较中的小数位

问题描述

我正在使用超越比较比较两个文件,并且需要正则表达式的帮助来忽略5个小数位后的内容,例如-

1.00000 00 |

所以第6个数字以后将被忽略,用|

分隔

我以为\.\d\{5\}\|可以工作,但是没有,任何帮助将不胜感激

解决方法

如果您的专业版为bcompare,则可以设置替换(如此处所述:Beyond Compare - ignore certain text strings?)。

您的要查找的文本: (\d+\.\d{5}).*

您的替换为: $1

这将捕获一个数字及其在子匹配项($1中的前五个小数位),并使用该值替换整数及其后的所有内容(例如您的示例中的|)。请注意,少于五个十进制数字的数字不匹配。如果要排除五位数字之后的其他字符,则需要相应地更改括号后的表达式部分。例如。如果您只想替换不超过|的数字,而不包括它。您要查找的文本为(\d+\.\d{5})\d*

如果您没有专业版,则可以使用语法元素(如此处所述:How do I make Beyond Compare ignore certain differences while comparing versions of Delphi Form Files)。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...