gpt4 book ai didi

用于在 Notepad++ 中删除具有相同 ID 的行的正则表达式

转载 作者:行者123 更新时间:2023-12-01 03:06:53 26 4
gpt4 key购买 nike

我正在尝试删除 Notepad++ 中具有相同 id 的行。我有一个 .txt 文件,它具有以下结构和相同的 id

1       33.854088   21.766714   abcdeffgffghjkkgfdfghjjh
1 33.854088 21.766714 ghfhsjiwassjss
2 32.856728 23.758888 asdfgdgff
3 37.85834 23.7711 asdfgghgghhg
3 37.85834 23.7711 babanxucndk

我想像那样只保留每个 id 的第一行

1       33.854088   21.766714   abcdeffgffghjkkgfdfghjjh
2 32.856728 23.758888 asdfgdgff
3 37.85834 23.7711 asdfgghgghhg

我尝试使用这个正则表达式 ^(.*?)$\s+?^(?=.*^\1$) 但它只给我完全相同的行,我只需要每个 id 的第一行。

最佳答案

这应该有效:

匹配:

^((\d+).*)(\r?\n\2.*)+

并替换为:

\1

我们匹配组 2 中的行 ID,并捕获组 1 中的第一行。然后我们继续匹配以相同 ID 开头的后续行(以我们的反向引用 \2 开头的行>).然后我们替换为第一行的第 1 组。请注意,这假定您的 ID 列是升序的。

实例:https://regex101.com/r/9KCuMn/1

关于用于在 Notepad++ 中删除具有相同 ID 的行的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56139398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com