6

我使用记事本++,我需要删除所有以“abc”开头的行。

注意,我不需要用空行替换以“abc”开头的行,但我需要完全删除这些行。

我该如何继续(我想使用正则表达式)?

4

5 回答 5

8

尝试更换

^abc.*(\r?\n)?

nothing

^表示一行的开始。

.表示通配符。

.*表示零个或多个通配符。

x?手段x是可选的。

\r?\n涵盖(通常是\r\nWindows)和\n(通常是 Unix),但必须是可选的以涵盖最后一行。

于 2013-03-04T13:39:24.183 回答
2

搜索这个正则表达式

^abc.*\r\n

什么都换。

于 2013-03-04T13:41:00.797 回答
0

\nabc.*在“查找和替换”->“替换”中尝试正则表达式将
“替换为”字段留空。

编辑:这不适用于第一个喜欢(因为 '\n' 表示“新行”)

于 2013-03-04T13:38:07.287 回答
0

在 Notepad++ 中对正则表达式进行更多搜索后,我发现换行符不是\n我所期望的(Windows),而是\n\r.

所以,我的正则表达式替换表达式应该是:
查找: abc.*\r\n
替换为:(无,空字段)

于 2013-03-04T13:40:56.367 回答
0

Ctrl+H调出Replace窗口。放

^abc.*(\r?\n)?

Find whatReplace with留空。选择Reqular expression并点击Replace All

这个正则表达式处理所有边缘情况:

  • 当文件的第一行以abc
  • 当文件的最后一行以开头abc并且文件末尾没有新行时。
于 2013-03-04T13:45:08.483 回答