我想删除所有包含单词“False”的行
例如,如果我有一个包含以下内容的文本文件:
在
MyEmail@gmx.net|J|1983>2012>3000|Good|[0=%]
MyEmail@hotmail.net|N|1985>2012>3000|False|[~~~'#'***+++~~~]
MyEmail@hotmail.net|N|1985>2012>3000|Good|[$"$!]|Number 2123
在
MyEmail@gmx.net|J|1983>2012>3000|Good|[0=%]
MyEmail@hotmail.net|N|1985>2012>3000|Good|[$"$!]|Number 2123
我应该在Notepad ++中使用哪个正则表达式删除不需要的行?
答案 0 :(得分:13)
Notepad++ (v6.0)的最新版本支持PCRE,因此您可以执行以下操作:
搜索:.*?False.*\r?\n
替换为:nothing
答案 1 :(得分:5)
它可能就像进入Notepad ++工具菜单并输入要搜索的文本一样简单,然后规定删除它找到的每一行。
否则识别整行的正常正则表达式可能是这样的 -
重做
如果默认值为(。)点为除换行符之外的任何内容,则为
.*False.*\n?
否则,这个
[^\n]*False[^\n]*\n?
如果线路上有'False',它们应匹配整行(加上换行符) 任何更像'False'的东西都必须被分隔符包围,这是额外的逻辑。
答案 2 :(得分:1)
你做不到。 Notepad ++ does not support mixing RegExps with line ends
删除行尾或连接行只能在扩展模式下完成。
,
“扩展”选项将\ n和\ r显示为可以匹配的字符。与普通搜索模式一样,Notepad ++正在寻找确切的字符。
答案 3 :(得分:1)
你不能一步完成正则表达式,但使用书签有两个步骤。
在“查找”对话框中,有一个“书签行”选项,可用于标记与查询匹配的行以进行删除。在较新版本的Notepad ++中,已将其移至“查找”对话框的“标记”选项卡。
一旦标记了所需的行,就从菜单栏中选择搜索>书签>删除已添加书签的行。顾名思义,这将删除上一次搜索中标记的所有行。