Notepad ++ destacar texto entre palavras-chave

2

Eu tenho um arquivo de texto que possui dados da seguinte maneira:

Top
    Datum1
    Datum2
Bottom
    Datum 1
    Datum 2
Top
    Datum 1
    Datum 2
...

e gostaria de selecionar todos os dados entre as palavras-chave "Superior" e "Inferior". Procurei o regex correto para fazer isso no Notepad ++, mas não encontrei as informações corretas para meu propósito. Eu apreciaria muito qualquer ajuda. Obrigado.

foxymop
fonte
Você não pode simplesmente selecionar assim usando Localizar, se encontrar sua sequência, toda a sequência encontrada será destacada / selecionada. O que você quer fazer com as linhas que deseja selecionar? Substitua-os por algo, remova-os ou ???
precisa saber é o seguinte
Deseja destacar (marcar) apenas os dados entre Superior e Inferior, mas não Inferior e Superior?
Yisroel Tech
É exatamente isso Yisroel Tech.
foxymop
@ Techie007 Gostaria de copiar o texto realçado para a área de transferência.
foxymop

Respostas:

3

Aqui está uma regex que selecionará todo o texto que está entre cada instância de Superior e Inferior:

(?<=Top)([\s\S]*?)(?=Bottom)

para marcar tudo no Notepad ++, basta colocar essa expressão na caixa de localização Mark. Veja a captura de tela abaixo.

Aqui você pode ver a expressão e, no lado direito, explica o que cada caractere da expressão faz: https://regex101.com/r/S5YGxj/1

insira a descrição da imagem aqui

Yisroel Tech
fonte
Obrigado pela sua resposta Yisroel Tech. Essa regex funciona perfeitamente para marcar todo o texto desejado, mas estou tendo problemas para selecionar todo o texto marcado. Eu segui as instruções aqui, mas as duas principais respostas não funcionam porque esse regex define apenas um marcador para cada conjunto de dados. Você sabe como selecionar o texto marcado?
foxymop
Não é possível, tanto quanto eu sei. (Se for, então é extremamente complicada.) Eu sugiro que você usar "Sublime", que faz isso com facilidade sublimetext.com/3
Yisrael tecnologia