Eu tenho um arquivo de log de 900 MB que posso abrir no SublimeText 3. Este arquivo está cheio de linhas semelhantes às seguintes.
10/08/2014 23:45:31:828,Information,,,,ExportManager: ,No records to send and/or not connected
Como posso filtrar todas as linhas que contêm No records to send and/or not connected
sublimetext
sublimetext3
energ1ser
fonte
fonte
Respostas:
Você pode fazer uma pesquisa e substituição de expressão regular:
Clique em Localizar> Substituir.
Certifique-se de que o botão Expressão regular está pressionado.
Para o campo Find What, coloque:
Deixe o campo Substituir por vazio.
Clique em Substituir Tudo
fonte
^.*No records to send and/or not connected\S.*$
Ctrl+Shift+K
com 200.000 linhas selecionadas.Para as pessoas que não querem escrever um regex - você pode apenas selecionar a string de pesquisa, clicar
ctrl+cmd+g
ou escolher "Quick Find All" no menu, que lhe dará as seleções para cada string correspondente; a partir daí,Home
irá mover cada cursor de seleção para o início da linha,shift+End
irá selecionar todas as linhas correspondentes edel, del
irá apagar todas elas.A edição de vários cursores é divertida!
fonte
Ctrl+Cmd+G
como sugere Leonid para selecionar todas essas strings. Depois disso, eu poderia ir diretamente para "Excluir linha"Ctrl-Shift-K
e cirurgicamente todas as linhas com esta corda foram removidas em um instante. Sublime Text é realmente o melhor editor de texto que já usei.Não consegui fazer o regex funcionar, então usei a abordagem Alt-F3 a partir desta resposta:
/superuser/452189/how-can-i-filter-a-file-for-lines-containing-a-string-in-sublime-text-2/598999#598999
fonte
CTRL + L
, o que expande as seleções para linhas inteiras, incluindo quebra de linha.Ctrl+Cmd+G
para multi-cursor em todas as ocorrências,Cmd+L
para expandir linhas e o copiar / colar usualIsto é o que encontrei para os usuários do Windows:
fonte
Nenhum dos códigos regex sugeridos acima funcionou no meu caso, mas funcionou:
fonte
\n
ou$
no final:.*(text in question).*\n
|
assim:.*(a).*|.*(b).*|.*(c).*
Eu tive um problema semelhante ao editar um mapa do site
Isso funcionou para mim:
fonte
As respostas acima são as maneiras corretas, mas se você quiser se livrar das linhas mesmo com uma única string, faça, Find -> Replace -> put
^.*[a-zA-Z]+.*\n
Na seção find e mantenha substitua com em branco. Aperte o botão substituir tudo para excluir todas as linhas com até mesmo uma única string.fonte