Explicação

Explicação

Tentei procurá-lo e experimentá-lo, mas não consegui descobrir.

No notepad++ eu tenho uma linha como:

102.

ou

12

e eu gostaria de excluir a linha inteira (então eu precisaria de \n\r eu acho) e todos esses tipos de linhas, como eu poderia fazer isso? (Não sei se é uma casa decimal, duas casas decimais ou três casas decimais ou se tem ponto depois ou não).

Responder1

Não estou 100% claro sobre quais são seus requisitos (ou seja, quais são os possíveis conteúdos das linhas a serem excluídas), mas fiz um regex partindo do pressuposto de que a linha começa com entre 1 e 3 números , seguido por um ponto final opcional e sem mais nada na linha (início ou fim).

Encontre o que:^\d{1,3}\.?\r?\n?

Substitua por: (em branco)

Testado no seguinte conjunto de dados

102.
102
12
12
1.
1
9999
ab21.
8442.

que deixa para trás

9999
ab21.
8442.

Explicação

^é um caractere especial que corresponde apenas ao início da linha. Isso é apenas para garantir que o padrão não esteja simplesmente no final de uma linha mais longa.

\dé usado para corresponder a qualquer valor numérico (ou seja, 0-9).

{1,3}é usado para modificar a instrução anterior (neste caso, \d) e é usado para especificar o número mínimo e máximo de vezes que você deseja que essa instrução corresponda. Portanto, esta linha indica que você deseja combinar um número entre 1 e 3 vezes (inclusive).

\.é usado para corresponder ao caractere de ponto. .é um caractere especial em regex, usado para corresponder a qualquer caractere (exceto uma nova linha por padrão, embora exista uma opção no Notepad++ para alterar esse comportamento). Devido a isso, precisamos escapá-lo com uma barra invertida para garantir que ele seja considerado .“o caractere” e não .“o padrão correspondente”.

?é usado para modificar a última instrução semelhante a {1,3}, mas desta vez é usado para dizer que a instrução anterior ( [.]) é opcional (tecnicamente diz para combiná-la entre 0 e 1 vezes, mas o resultado final é o mesmo).

\r?\n?é usado para corresponder à nova linha como você já mencionou. A regex funcionaria sem isso, mas não removeria a linha, apenas a limparia (deixando uma linha em branco atrás). Ao tornar ambos \ropcionais \n, isso se tornará portátil para Windows, Linux e Mac.

Finalmente, a razão pela qual deixamos o Replace with :campo em branco é simplesmente porque não queremos que nada volte para a linha que estamos excluindo.

Esperamos que seja isso que você estava procurando e, se não, indique a direção certa.

informação relacionada