No Textpad ou no Notepad ++, existe uma opção para exportar todas as correspondências para uma localização de expressão regular, como uma única lista?
Em um grande arquivo de texto, estou procurando tags (palavras entre%%), usando expressão regular %\< and \>%
, e quero todas as correspondências como uma única lista, para que eu possa remover duplicatas usando o Excel e obter uma lista de tags exclusivas.
Respostas:
Você pode conseguir isso usando as referências anteriores e as funcionalidades Localizar e Marcar no Notepad ++.
Encontre as correspondências usando regex (digamos
%(.*?)%
) e substitua-as por\n%\1%\n
; depois disso, teremos nossa palavra-alvo em linhas separadas (ou seja, nenhuma linha terá mais de uma palavra correspondente)Use a funcionalidade Pesquisar -> Localizar -> Marcar para marcar cada linha com regex
%(.*?)%
e lembre-se de marcar ' Linha de Marcador ' antes de marcar o textofonte
Fazer isso no Notepad ++ é um requisito obrigatório? Você está no Windows ou em alguma forma de Unix? Se você estiver no Windows, poderá fazê-lo (parcialmente) no prompt de comando:
findstr
é vagamente inspirado porgrep
, portanto, esse novo_arquivo conterá todas as linhas correspondentes aos seus critérios de pesquisa; você pode usar o Notepad ++ para remover o texto indesejado (à esquerda do primeiro% e à direita do segundo).E, é claro, se você estiver no Unix, poderá executar a tarefa equivalente
sed
.fonte
Existe um plug-in do Notepad ++ que pode copiar a expressão regex correspondente para o novo arquivo na nova guia. RegexExtract
Entrada da caixa de diálogo Editar personalizada para a pergunta
Na imagem, você pode ver como preencher a caixa de diálogo. Suponho que uma palavra não contenha espaços, etc., apenas caracteres correspondidos por \ w. Notavelmente:
fonte
No TextPad, você abriria a
Find
caixa como de costume e usaria oMark All
botãoA partir daí, use a
Copy Bookmarked Lines
função (Menu Editar> Copiar outro> Linhas marcadas.)fonte