在 Notepad++ 中删除多行

在 Notepad++ 中删除多行

所以我得到了一个 dns-name 列表,我想使用最好是 Notepad++ 来过滤掉所有通用的 dns-name。

例如

Name: test-14.45.name.other.com  
Address: 192.168.14.45

Name: cottoncandy.fun.com  
Address: 192.168.14.46

显然,最简单的部分是将通用名称(test-14.45)添加到书签并将其删除,因为它们的名称都有一些共同的部分。

所以我想知道的是,如何为每个非通用 DNS 名称下方的地址字段添加书签?

答案1

  • Ctrl+H
  • 找什么:^Name:\h+test-\d+\.\d+.+\R.+(?:\R\R?|$)
  • 找什么:^Name:\h+p208-\d{1,2}.+\R.+(?:\R\R?|$)
  • 用。。。来代替:LEAVE EMPTY
  • 检查环绕
  • 检查正则表达式
  • 请勿检查. matches newline
  • Replace all

解释:

^           : beginning of line
Name:       : literally
\h+         : 1 or more horizontal spaces
p208-       : literally
\d{1,2}     : 1 or 2 digits
.+          : 1 or more any character but newline
\R          : any kind of linebreak (i.e. \r or \n or \r\n)
.+          : 1 or more any character but newline
(?:         : start non capture group
    \R\R?   : 1 or 2 linebreak
  |         : OR
    $       : end of line
)           : end group

鉴于:

Name: p208-14.45.name.other.com  
Address: 192.168.14.45

Name: cottoncandy.fun.com  
Address: 192.168.14.46

Name: p208-14.44.name.other.com  
Address: 192.168.14.45

给定示例的结果:

Name: cottoncandy.fun.com  
Address: 192.168.14.46

答案2

您可以Find删除它们,使用下面的正则表达式来查找要删除的条目,然后删除它们。

.*test-14\.45.*\r\nAddress.*

确保选择了“正则表达式”并且“。”匹配换行符”为空白。

在此处输入图片描述

相关内容