是否有可能在notepad++中删除重复的行,只留下一行的单一出现?
当前回答
如果行是紧挨着的,那么你可以使用正则表达式替换:
搜索模式:^(.*\r?\n)(\1)+
替换为:\1
其他回答
扩展顶部的答案,还可以使用第二个前向查找几乎与其他行重复的行。
^(±s * (< PackageReference包括=”。* * *版=)。*)$±s +?^(?=.*^\ 2 . *美元)
这里我在多次引用同一个<PackageReference Include="。字符串,不管它的版本。
测试数据
<PackageReference Include="Package1" Version="2.2.1" />
<PackageReference Include="Package1" Version="2.2.1" /> // Match
<PackageReference Include="Package1" Version="2.2.2" />
<PackageReference Include="Package2" Version="5.1" /> // Match
<PackageReference Include="Package2" Version="5.2" />
<PackageReference Include="Package3" Version="2.2.1" /> // No match
<PackageReference Include="Package4" Version="2.2.1" />
查看regex术语含义的详细说明,并尝试使用这个regex101共享中的您自己的数据。
如果你不关心行顺序(我认为你不关心),那么你可以使用Linux/FreeBSD/Mac OS X/Cygwin盒子,然后做:
$ cat yourfile | sort | uniq > yourfile_nodups
然后在notepad++中再次打开该文件。
带有TextFX插件的notepad++可以做到这一点,如果你想按行排序,并同时删除重复的行。
要在最新版本的notepad++中安装TextFX,您需要从这里下载:https://sourceforge.net/projects/npp-plugins/files/TextFX
TextFX插件曾经包含在旧版本的notepad++中,或者可以从菜单中添加到插件->插件管理器->显示插件管理器->可用选项卡-> TextFX ->安装。在某些情况下,它也可能被称为TextFX字符,但这是同样的事情。
需要的复选框和按钮现在将出现在菜单下:TextFX -> TextFX工具。
确保选中了“sort outputs only unique…”。接下来,选择一个文本块(Ctrl+ a选择整个文档)。最后,点击“区分大小写排序”或“不区分大小写排序”
无论文件是否排序,您都可以使用下面的regex删除文件中任何位置的重复项。
^([^\r]*[^\n])(.*?)\r?\ n \ 1美元 替换为:\1\2 搜索模式:
“正则表达式” 检查“。匹配换行"选项
尽可能多地点击“替换全部”(或按住Alt+A快捷键),直到你看到“0次发生被替换”
没有一个对我有效。
解决方案是:
取代
^(.*)\s+(\r?\n\1\s+)+$
with
\1
推荐文章
- 在Python Pandas中删除多个列中的所有重复行
- MySQL对重复键更新在一个查询中插入多行
- 我如何检查是否有重复在一个平面列表?
- 如何将大写字母转换为小写notepad++
- 我如何在python中使用熊猫获得所有重复项的列表?
- notepad++是否显示所有隐藏字符?
- 如何在notepad++文本编辑器中更改背景颜色?
- 按列A删除重复项,保留列B中值最高的行
- 如何在PostgreSQL中找到重复的记录
- notepad++设置禁用自动打开以前的文件
- 在notepad++中找到CRLF
- 什么是最有效的方法来删除重复和排序一个向量?
- 在Ruby中删除数组中的重复元素
- 我如何配置notepad++使用空格而不是制表符?
- 删除索引重复的熊猫行