Como faço para alternar o texto em um delimitador em uma linha?

0

Estou com dificuldades para resolver este problema no Notepad ++. Eu realmente aprecio uma boa resposta.

Digamos que eu tenha esta linha:

watermelon:strawberries

E eu quero entender isso:

strawberries:watermelon

Como posso fazer isso para todas as linhas no Notepad ++? Eu tentei diferentes tipos de coisas, mas não consegui esse resultado.

    
por hustler225 21.08.2016 / 14:07

2 respostas

3

Supondo que você tenha some string , seguido por : seguido por some string , e deseja que ambas as sequências de caracteres troquem de lugar, você pode usar uma pesquisa e substituição RegEx para fazê-las mudar de posição.

Abra uma caixa de diálogo Pesquisar e substituir ( CTRL + H )

Em Localizar: digite (.+):(.+)

No Substituir por: insira :

Na parte inferior do modo de pesquisa, mude para a expressão regular.

Pressione Substituir tudo e tudo será trocado.

Se isso não lhe der o resultado desejado, edite sua pergunta e especifique melhor o que deseja. É um pouco aberto a interpretação agora, então eu assumo uma linha inteira onde em algum lugar há um: e ele irá trocar as coisas. Pode haver várias palavras com espaços, etc., e todos trocarão por ela.

O regex explicado:

( ... ) é um grupo. Sempre que você adicionar um grupo na regex, na substituição você poderá recuperar o que encontrou usando \ 1, \ 2, \ 3 em ordem de entrada.
. é: encontre qualquer caractere.
+ is : anterior uma ou mais vezes.

Então, (.+) significa, Crie um grupo que possamos encontrar e, neste grupo, encontre qualquer caractere uma ou mais vezes.

: is: Este caractere não tem significado, portanto está sendo procurado como um literal : .
E novamente o (.+) como explicado acima.

Então, em termos laymans, encontramos qualquer coisa até encontrarmos um : e colocá-lo em um grupo, e o que quer que restar, colocamos em outro grupo. Estes são os grupos 1 e 2, respectivamente.

Em nossa substituição, trocamos as posições do grupo primeiro nos referindo ao grupo 2 e depois 1, e adicionamos o : para separar os grupos novamente.

    
por 21.08.2016 / 14:13
0
  1. Pressione CTRL-H para pesquisar / substituir a função.
  2. Ativar "modo de expressão regular" (alt-g ou botão de opção no canto inferior esquerdo)
  3. Insira o seguinte padrão de localização da expressão regular na entrada "Localizar": (. *): (. *)
  4. Insira o seguinte padrão de substituição de expressão regular na entrada "Substituir por": $ 2: $ 1
  5. Use os botões no canto superior direito para percorrer os resultados encontrados ou use "Substituir tudo" para substituí-los todos de uma só vez.

Algumas notas:

  • Talvez você queira revisar o padrão se algumas de suas linhas contiverem vários pontos-e-vírgulas.
  • Você pode querer aprender mais sobre expressões regulares. Verifique páginas como link ou o abrangente link (ou use o Google - é um grande grande tópico)
por 21.08.2016 / 14:17