Como excluir uma linha entre duas linhas que correspondem a um determinado padrão no Notepad ++

0

entrada do meu arquivo é:

bsg23
< Hi James
ab89n
> Hi Jamy
nd87a
< What about weekend?
90hsg
> What about sat/sun?

e saída devem vir:

< Hi James
> Hi Jamy
< What about weekend?
> What about sat/sun?

Significa excluir o conteúdo da linha antes de '>' e '<'.

Alguém pode ajudar. Agradecemos antecipadamente.

    
por Legend 25.10.2016 / 22:56

1 resposta

1

No Notepad ++ 6.9.1 eu consegui fazer isso selecionando Search- > Replace ... e colocando a seguinte expressão regular no campo "Find what:":

(^[^<>\n]+)\n|\n[^<>\n]+

Em seguida, deixe o campo "Substituir com:" vazio e defina um Modo de pesquisa de "Expressão regular", deixando ". matches newline" desmarcada e pressionando "Substituir tudo".

Como funciona

(^[^<>\n]+)\n|\n[^<>\n]+ é uma Expressão regular do Notepad ++ .

(^[^<>\n]+)\n É uma subexpressão que corresponde a linhas que não começam com < ou > . Isso corresponde à primeira linha do texto na sua entrada de exemplo "bsg23".

| Indica alternância entre duas subexpressões

\n[^<>\n]+ Corresponde a uma nova linha seguida por caracteres que não são < , > ou uma nova linha. Isso corresponde às novas linhas no final das linhas que começam com < ou > e o seguinte texto na próxima linha.

    
por 26.10.2016 / 02:49

Tags