Notepad++ 利用正则表达式批量删除关键词所在行

您所在的位置:网站首页 notepad批量删除 Notepad++ 利用正则表达式批量删除关键词所在行

Notepad++ 利用正则表达式批量删除关键词所在行

2022-06-03 12:21| 来源: 网络整理| 查看: 265

Notepad++ 利用正则表达式删除关键词所在行

 

批量删除关键字所在行,语法:

^.*关键字.*\r?\n    (不保留空行)

^.*关键字.*$  (保留空行)

 

想在Notepad++中利用查找功能,查找文件中含有字段 “0|20180706” 的行并予以删除。

 

具体步骤:

Ctrl + F,查找,查找模式选择 '正则表达式',不选 '.匹配新行' 查找目标输入 ^.*0\|20180706.*\r?\n (如果要保留空行,则查找 ^.*0\|20180706.*$) 替换为:(空)

注意:

Notepad++的[全部替换]受[方向]约束,所以如果想“向下”全部替换,要把光标放到文首。  匹配字段有 “|”,所以需要通过倒斜杠对 “|” 进行字符转义。否则会匹配所有含有“0”或者“20180706”字段所在的行。

 

 

使用场景:

整理Android S(12) 版本支持哪些语种?

1. 进入core/res/res目录,通过命令 ll |tee log.txt 导出所有目录

2. notepad++打开log.txt文件,删除包含"mcc"关键字的所有行, 语句:     ^.*mcc.*\r?\n

 

 

 

在我们处理文件时,很多时候会用到查找与替换。当我们想将文件中某一部分替换替换文件中另一部分时,怎么办呢? 下面正则表达式 给我提供方法。

正则表达式,提供复杂 并且弹性的查找与替换

注意: 不支持多行表达式 (involving \n, \r, etc).

1 基本表达式 符号解释 . 匹配任意字符,除了新一行(\n)。也就是说 “.”可以匹配 \r ,当文件中同时含有\r and \n时,会引起混乱。要匹配所有的字符,使用\s\S。 (…) 这个匹配一个标签区域. 这个标签可以被访问,通过语法 \1访问第一个标签, \2 访问第二个, 同理 \3 \4 … \9。 这些标签可以用在当前正则表达式中,或则替search和replace中的换字符串。 \1, \2, etc 在替换中代表1到9的标签区域(\1 to \9)。例如, 查找字符串 Fred([1-9])XXX 并替换为字符串 Sam\1YYY的方法,当在文件中找到Fred2XXX的字符串时,会替换为Sam2YYY。注意: 只有9个区域能使用,所以我们在使用时很安全,像\10\2 表示区域1和文本”0”以及区域2。 […] 表示一个字符集合, 例如 [abc]表示任意字符 a, b or c.我们也可以使用范围例如[a-z] 表示所以的小写字母。 [^…] 表示字符补集. 例如, [^A-Za-z] 表示任意字符除了字母表。 ^ 匹配一行的开始(除非在集合中, 如下). $ 匹配行尾. * 匹配0或多次, 例如 Sa*m 匹配 Sm, Sam, Saam, Saaam 等等. + 匹配1次或多次,例如 Sa+m 匹配 Sam, Saam, Saaam 等等. ? 匹配0或者1次, 例如 Sa?m 匹配 Sm, Sam. {n} 匹配确定的 n 次.例如, ‘Sa{2}m’ 匹配 Saam. {m,n} 匹配至少m次,至多n次(如果n缺失,则任意次数).例如, ‘Sa{2,3}m’ 匹配 Saam or Saaam. ‘Sa{2,}m’ 与 ‘Saa+m’相同 *?, +?, ??, {n,m}? 非贪心匹配,匹配第一个有效的匹配,通常 ‘’ 会匹配整个 ‘content’字符串 –但 ‘’ 只匹配 ” .这个标记一个标签区域,这些区域可以用语法\1 \2 等访问多个对应1-9区域。 2 标记和分组 符号解释 (…) 一组捕获. 可以通过\1 访问第一个组, \2 访问第二个. (?:…) 非捕获组. (?=…) 非捕获组 – 向前断言. 例如’(.*)(?=ton)’ 表达式,当 遇到’Appleton’字符串时,会匹配为’Apple’. (?


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3