基于char设置排除整行的否定先行可能吗?

时间:2016-02-24 01:46:30

标签: notepad++ negative-lookahead

我在Notepad ++中有一个大文本文件,我想找到某些行。让我们说它看起来像:

I don't like numbers 1 2 and 3
I don't like most symbols either, ! @ and # are bad
But I do like lines with no numbers and only symbols . and *

在上文中,我想排除文件中那些包含数字和除句点之外的所有符号或(比方说)星号的行。

我现在知道负面前瞻/后面不会这样工作,但我的意思是像交配一样负面的前瞻条件,如(?!= [\ d])或[^ \ d]一起搜索包含^ [A-Za-z。* \ s] + $等单词的行,但是在负数匹配时整行都被拒绝,无论它出现在哪一行。

1 个答案:

答案 0 :(得分:0)

看起来好像要删除所有不符合^[A-Za-z.*\s]+$模式的行。在这种情况下,只需使用

查找内容(^[A-Za-z.*\s]+$\R*)|.*\R*
替换为$1

<强>详情:

  • (^[A-Za-z.*\s]+$\R?) - 捕获组#1(引用$1反向引用)匹配:
    • ^ - 行首
    • [A-Za-z.*\s]+ - 一个或多个ASCII字母,.*或空格(\s)的字符(替换为\h仅匹配水平字母wjitespaces)
    • $ - 行尾
    • \R* - 0个或更多换行符
  • | - 或
  • .* - 任何0+字符
  • \R* - 0个或更多换行符。

$1插回好线。

enter image description here