Notepad ++删除包含重复单词的行

Notepad++ deleting lines containing duplicate words

我有一个.txt文档,其中包含一个单词,后跟一行中的日期,依此类推。

Notepad ++如何识别不同行中的相同单词并删除重复行?


不是你的问题的直接答案,但我发现这篇文章基于标题。我当时想要删除重复的行。我在这里找到了一个简单的方法

  • 标记所有文本(CTRL + A)。单击TextFX→单击TextFX工具→选中+排序仅输出UNIQUE(在列)行(如果尚未选中)。
  • 单击TextFX→单击TextFX工具→单击排序行不区分大小写(在列)

  • 您可以在Windows上使用EditPlus或在Mac上使用TextWrangler轻松排序和删除重复的行。

    在Notepad ++ 6.5.2(免费)之后,您可以对行进行排序或者您可以使用"插件管理器"安装插件"TextFX Characters"。

    TextFX includes numerous features to transform selected text.
    Featuring: * Interactive Brace Matching * Quote handling * Character
    case alternation * Text rewrap * Column Lineup * Fill Text Down *
    Insert counter text down * Text to code conversion * Numeric
    Conversion * URI & HTML encoding * HTML to text conversion * Submit
    text to W3C * Text sorting * Ascii Chart * Leading whitespace repair *
    Autoclose HTML & braces Homepage: http://textfx.no-ip.com/textfx/


    假设相同单词的相同出现日期可能不同,并且您希望保留文件中首先出现的日期,那么这应该有效(确保您的文件以新行结束):

  • 转到"替换"对话框(您可以执行Ctrl + F并转到替换选项卡)。
  • 在底部的"搜索模式"中选择"正则表达式"(确保未选中"。匹配换行符")。
  • 在"查找内容:"字段中键入(\s*\w+ )(.*

    )((.*

    )*)\1.*

  • 在"替换为:"字段中键入\1\2\3
  • 单击"替换"直到不再出现("全部替换"似乎不起作用,并且可能存在一个更好的正则表达式,它将起作用,但我还没有找到它)。
  • 我在文件上测试了这个:

    1
    2
    3
    4
    5
    6
    7
    testing330     05:09-24/08
    whatever     10:55-25/08
    testing     15:57-26/08
    testing667     19:22-30/08
    linux     00:29-31/08
    testing330     00:29-31/08
    windows     12:25-31/08

    结果是:

    1
    2
    3
    4
    5
    6
    testing330     05:09-24/08
    whatever     10:55-25/08
    testing     15:57-26/08
    testing667     19:22-30/08
    linux     00:29-31/08
    windows     12:25-31/08


    就我个人而言,以下是我遵循的步骤。假设您在A列中只有1列数据。

  • 将数据导入Excel。
  • 对数据进行排序。
  • 插入一个函数来检查重复项。单元格B2将是:= IF(A2 = A1,"Duplicate",")
  • 选择所有B列。
  • 复制。
  • 粘贴特殊并粘贴值。
  • 根据B列对数据进行排序。
  • 删除标有"复制"的所有内容。
  • 将数据复制回Notepad ++
  • 我以为有这样的插件,但现在找不到它。否则,此链接可能会对您有所帮助。