当我在Windows平台上将2个文件与WinMerge进行比较时,你知道我怎么能忽略特定的单词?
我的意思是我想对WinMerge说:“不要关心那些单词:房子,花园等等。”
比较这两行时的情况:
the house is at london
&安培;
the bus is at london
然后没有区别会显示,因为我不关心房子这个词......
有什么想法吗?
答案 0 :(得分:1)
我知道这已经有一段时间了,但是由于这在搜索这个主题时显示为最佳匹配,我以为我会添加它......
据我所知,WinMerge STILL并没有直接拥有此功能。您有2个选择:
1)为WinMerge编写自己的插件。如果你想投入时间,似乎可以做你想做的事
2)获取Meld。它包括使用正则表达式ignore the parts of a line进行比较的能力。例如,如果你只是把" word"在文本过滤器首选项中,它将忽略" word"并比较该行的所有其他部分。我用它来比较Linux中的dmesg日志,忽略开头的计时器字段" ^ [。*?]" (忽略初始括号之间的所有内容,非贪婪)。
答案 1 :(得分:1)
在winmerge 2.16(至少)(2020-05)中,您可以使用菜单插件>插件设置...
单击PrediffLineFilter.sct,然后单击“插件设置...”按钮,在相应列中选中“使用RegExp”复选框。在“查找内容”列中,指定一个正则表达式,并将“替换为”单元格保留为空。关闭此插件配置窗口。然后,在“插件”>“ Prediffer”菜单中,选择“ PrediffLineFilter.sct”。
然后您可以使用菜单插件> Prediffer>不使用Prediffer(正常)关闭此过滤器插件。
答案 2 :(得分:0)
我正在寻找类似的东西,所以这可能对你有所帮助:
WinMerge不允许过滤部分行。如果线路过滤器匹配,则忽略整行。有关线路过滤器的说明,请参阅http://manual.winmerge.org/Filters.html。
因此,如果除了单词bus和house之外还有其他区别,那么该行也将被忽略。