【问题标题】:How to ignore a line containing a specific word using winmerge line filters?如何使用 winmerge 行过滤器忽略包含特定单词的行?
【发布时间】:2019-01-16 22:41:13
【问题描述】:

我有很多文件包含以下类型的行 -

* @version $Revision: 1.xxx  

我希望在使用 winmerge 进行比较时忽略这种类型的行。我尝试过使用线路过滤器。但是,直到无法做到这一点。 有人可以在这方面帮助我吗?

【问题讨论】:

  • 你有什么尝试吗?请在此处发布您的正则表达式,否则问题将被关闭。
  • 我已经尝试过这个 - ^* @version
  • 查看此网站:regexfilterforw.sourceforge.net。我看到线路过滤器工作不正常。
  • 谢谢您的回复。我已经检查了那个网站。但是,它对我没有帮助。

标签: regex winmerge


【解决方案1】:

您实际上可以使用line filters 做到这一点。

  1. 从选择对话框中选择过滤器选项
  2. 转至 Linefilters 选项卡,启用行过滤器,然后编写一个正则表达式来匹配您要过滤掉的行。
  3. 在结果中,它会以不同颜色突出显示过滤后的行,但不会将它们视为单个文件或文件夹摘要中的差异。

在您的特定情况下,您会希望找到与您的命名约定匹配的正则表达式模式,但这样的事情应该可以工作:

@version \$Revision: \d\.\d*

【讨论】:

  • 大吃一惊。谢谢你很有用:D
【解决方案2】:

经过多次尝试,以下正则表达式对我有用 -

^ \* @version \$Revision:

【讨论】:

    【解决方案3】:

    查看WinMerge release notes

    过滤器仅在使用完全比较时应用

    使用Full时仅在文件夹比较中应用行过滤 内容比较方法。

    如果您使用任何其他比较方法,则不使用线路过滤器 应用。在文件夹比较中标记为不同的文件可以获得状态 打开它们进行文件比较时更改为相同。

    因此,您将无法使用正则表达式过滤掉右/左窗格中打开的行。

    您必须安装和使用 3rd 方过滤器,例如http://regexfilterforw.sourceforge.net/.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-10
      • 1970-01-01
      • 1970-01-01
      • 2017-07-17
      • 2019-09-03
      • 1970-01-01
      • 1970-01-01
      • 2019-06-16
      相关资源
      最近更新 更多