![Explicação](https://rvso.com/image/1417415/Explica%C3%A7%C3%A3o.png)
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 \r
opcionais \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.