删除以#或者开头的所有行 在Notepad ++中

使用记事本+ +,如何删除所有以#或;开头的行?

找:

 ^[#;].* 

什么都不换。 ^表示行的开始, [#;]是匹配#或者的字符类;.*匹配行中的其他内容。

在6.0以前版本的Notepad ++中,由于正则expression式引擎的限制,您将无法真正移除行; replace结果为每行匹配的空行。 换句话说,这个:

 #富
 ; 酒吧
声明;

会变成:



声明;

但是,如果在模式的末尾添加\r\n\r\n ,replace将在Notepad ++ 6.0中运行,具体取决于您的文件正在使用哪一行,从而导致:

声明;

它可能,但不是直接的。

总之,去search,使用你的正则expression式,检查“标记线”,然后单击“查找所有”。 它导致所有这些行的书签。

在search菜单中有一个“删除书签行”瞧。

我在这里find了答案(正确的答案是第二个,而不是接受!): 如何删除Notepad ++上的特定行?

正如其他人所指出的那样,在Notepad ++ 6.0和更高版本中,可以使用“replace”function删除所有以“;”开头的行。 要么 ”#”。

Tao提供了一个起点的正则expression式,但是它并没有考虑到“之前可能存在的空白” 或给定行上的“#”字符。 例如,以“;”开头的行 使用Tao的正则expression式^(#|;).*\r\n时,不会删除“#”,而是“tabbed-in”。

Tao的正则expression式并没有解释BoltClock的答案中提到的警告:无论是系统中换行符的差异。

改进是使用^(\s)*(#|;).*(\r\n|\r|\n)? ,这占据了领先的空白和换行符的差异。 另外,尾随? 处理文件的最后一行以#或开头的情况; ,但不会以换行符结束。

为了好奇,可以辨别给定文档中使用哪种types的换行符(并且可以使用多种types的换行符):查看 – >显示符号 – >显示换行符。

也许你应该尝试

 ^[#;].*$ 

^匹配开始, $结束。

在Notepad ++中,可以使用“查找”对话框中的“标记”选项卡为与查询匹配的所有行添加书签,这些行可以是正则expression式或正常(通配符)。

然后使用search>书签>删除书签行。