notepad ++ regexp para encontrar todas as linhas que contenham uma string específica

6

Estou procurando um notepad ++ regexp que contenha uma string específica. Eu quero então deletar toda essa linha.

    
por clamp 25.01.2011 / 10:32

4 respostas

16

Bem, não acho que você possa fazer isso com uma substituição de pesquisa.

Eu faria isso.

Abra a substituição de pesquisa, escolha o modo regex e pesquise por:

^.*(string).*$ e deixe a substituição ser \ 1 (essa é a string que marca as linhas que você não deseja). Isso deixará linhas apenas com a string indesejada e nada mais.

Em seguida, alterne para a pesquisa estendida e pesquise por \r\nstring e deixe a substituição em branco. Isso excluirá as linhas apenas com a string indesejada.

Há provavelmente uma maneira mais simples de fazer isso, mas isso funciona.

Edite: e, ah, verifique também a primeira linha do documento para uma linha com apenas a string indesejada, pois isso não será percebido. Como disse, provavelmente há um jeito melhor. ;)

    
por 25.01.2011 / 12:53
1

Para encontrar várias strings na mesma linha, você pode usar ^.\*(string).\*(string).*$

    
por 02.05.2012 / 22:52
1

Certifique-se de desmarcar a opção .matches newline .

    
por 28.02.2014 / 12:03
1

Então, eu queria excluir uma linha inteira se continha uma das três palavras: LAB, RAD, TRAN. Então, o que eu fiz foi um "localizar e substituir" no Notepad ++, onde eu coincidir com a linha inteira, se contiver uma dessas palavras. Além disso, embora eu tenha que coincidir com a nova linha (\ n) e retornar caracteres (\ r) e substituiu a coisa toda em branco (e.i. nada). Dessa forma, quando ele faz a substituição, remova todo o texto, incluindo os caracteres ocultos que lhe dão uma nova linha. Isso fez com que não deixasse uma linha em branco após a substituição

REGEX:

.*((LAB)|(RAD)|(TRAN)).*\r\n

    
por 22.08.2014 / 23:15