【问题标题】:Find duplicates and delete all in notepad++在记事本++中查找重复项并全部删除
【发布时间】:2016-05-21 15:02:10
【问题描述】:

我有多个电子邮件地址。我需要找到并删除所有(包括找到的)。这在记事本++中可以吗?

示例:epshetsky@test.com, rek4@test.com, rajesh1239@test.com, mohanraj@test.com, sam@test.com, nithin@test.com, midhunvintech@test.com, karthickgm27@test.com, rajesh1239@test.com, mohanraj@test.com, nithin@test.com,

我需要像这样的结果

epshetsky@test.com, rek4@test.com, sam@test.com, nithin@test.com, midhunvintech@test.com, karthickgm27@test.com,

notepad++中怎么做?

【问题讨论】:

  • 你可以找到它们并用一个空字符串替换它们,从而将它们全部删除,然后手动写回一行。
  • @AdrianHHH 那个重复的线程正在谈论如果找到重复的行就让它保持不变。但我的情况是,如果发现任何重复行,我需要删除所有重复行。
  • OK @James123 重复错误。你检查过 Stack Overflow 上的其他问题吗?您对[notepad++] delete duplicates 的搜索显示了什么?

标签: notepad++ text-editor


【解决方案1】:

如果可以更改行的顺序,您可以这样做:

  1. 使用编辑对行进行排序 -> 行操作 -> 按字典顺序升序对行进行排序
  2. 进行查找/替换:
    • 查找内容: ^(.*\r?\n)\1+
    • 替换为:(无,留空)
    • 检查左下角的正则表达式
    • 点击全部替换

工作原理:排序将重复项放在一起。查找匹配行^(.*\r?\n) 并捕获\1 中的行,然后它继续并尝试在第一个匹配项后面一次或多次(+)找到\1。这样的重复块(如果存在)被替换为空。

\r?\n 应该可以很好地处理 Windows 和 Unix 换行符。

【讨论】:

  • 您好,非常感谢!这非常有用。但是,如果重复行位于最后两行,则它不起作用。
  • @Shark 也许最后一行不以换行符结尾? \r?\n 表示换行符,因此换行符是匹配的一部分。 (尝试在最后一行后按回车,以换行结束。)
【解决方案2】:

您需要 textFX 插件。然后,只需按照以下说明进行操作:

Paste the text into Notepad++ (CTRL+V). ...
Mark all the text (CTRL+A). ...
Click TextFX → Click TextFX Tools → Click Sort lines case insensitive (at column)
Duplicates and blank lines have been removed and the data has been sorted alphabetically.

就个人而言,我会使用 sort -i -u source >dest 而不是 notepad++

【讨论】:

    【解决方案3】:

    你只需要编辑->行操作->删除重复行

    【讨论】:

      【解决方案4】:

      你可以使用

      单击 TextFX → 单击 TextFX 工具 → 单击不区分大小写的行排序(在列处) 重复项和空行已被删除,数据已按字母顺序排序。

      如上所述。但是,我这样做的方式是因为我需要用空行替换重复项,而不仅仅是删除行,一旦按字母顺序排序:

      REPLACE:
      ((^.*$)(\n))(?=\k<1>)
      
      by
      
      $3
      

      这将转换:

      Shorts
      Shorts
      Shorts
      Shorts
      Shorts
      Shorts Two Pack
      Shorts Two Pack
      Signature Braces
      Signature Braces
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      Signature Cotton Trousers
      

      到:

      Shorts
      
      Shorts Two Pack
      
      Signature Braces
      
      
      
      
      
      
      
      
      
      
      Signature Cotton Trousers
      

      我就是这样做的,因为我特别需要这些线条。

      【讨论】:

      • 我也有同样的需求,但我无法让您的代码正常工作。我将带有短裤和裤子的示例粘贴到 Notepad++ 中,但您在上面提供的正则表达式没有找到任何匹配项。是的,我在替换对话框窗口中选择了“正则表达式”。
      猜你喜欢
      • 2021-12-11
      • 2014-03-09
      • 2021-12-24
      • 2021-02-02
      • 2017-02-12
      • 2017-03-27
      • 1970-01-01
      • 2014-03-03
      相关资源
      最近更新 更多