Eu tenho esse tipo de seqüências de caracteres do arquivo de log
rule family="ipv4" source address="54.246.81.158" reject
rule family="ipv4" source address="175.36.129.24" reject
Como posso combinar um endereço IP de cada uma dessas seqüências e, em seguida, substituir o original com IP correspondente usando a expressão regular no editor de texto do Notepad ++?
Resultado esperado :
54.246.81.158
175.36.129.24
Eu prefiro alcançar o objetivo usando regex e Pesquise e substitua só. Se possível, no Notepad ++ Eu sei que posso usar a funcionalidade macro, mas não quero fazer isso.
Então, a princípio, combinaremos IP com regex ( \d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}
). No segundo, substituímos a string original pelo IP da etapa 1
Mas não tenho certeza se é possível usar o Notepad ++.
Se eu falhar com isso, vou usar o vim :-)
networking
notepad++
regex
Twissell
fonte
fonte
rule family="ipv4" source address="
é comum em todas as linhas, você também pode substituir seu IP gravando ummacro
para uma linha e executá-la até o final do arquivo.Respostas:
^.+?((?:\d+\.){3}\d+).+$
$1
. matches newline
Explicação:
Substituição:
Resultado para o exemplo dado:
Para ter certeza de que você tem um endereço IP, use
ao invés de
fonte
Solução mais simples, mas não usando o RegEx:
Substituir
com nada e
com nada.
fonte