Notepad ++ Tentando adicionar um caractere após APENAS o primeiro espaço em cada linha

1

Eu tenho 30.000 linhas de texto que têm um número aleatório de espaços nelas. Eu preciso adicionar um personagem para apenas o primeiro espaço em cada linha. Qualquer um que possa sugerir algo seria muito apreciado.

    
por David Williams 11.06.2016 / 04:49

2 respostas

0

Experimente o TextPad. Você pode gravar macros e reproduzi-las. Portanto, grave o que você deseja fazer na primeira linha e, depois de concluir a primeira linha, deixe o cursor no início da próxima linha. Em seguida, basta reproduzir a macro até o final do arquivo. Ou mantenha pressionada a tecla macro de reprodução.

link

    
por 11.06.2016 / 04:55
0

O que você procura é expressões regulares. A primeira coisa que você vai querer fazer é transformar sua pesquisa em expressões regulares

Alegriaportertido,porqueachoqueseiexatamentecomoresolverisso

link

A expressão que você quer é:
Localizar: (^.*?)( )
Substitua: #

A maneira como isso funciona é a seguinte nas expressões regulares, o () significa "captura". Isso significa que ele encontrará esse grupo altamente específico e, em seguida, você poderá consultá-lo na substituição por \ 1 ou \ 2 ou \ 3. O número começa em 1 e você conta a partir da parantesia aberta

^ significa iniciar do início da linha. (Porque você quer que sua inserção cubra o PRIMEIRO espaço que é o que procuraremos a partir da frente, encontre o primeiro espaço)

.*? esta parte encontra a primeira palavra na frente do espaço. Isso é feito fazendo em um grupo qualquer caractere ( . ) o maior número possível ( * ), mas o menor número necessário de ? . Sem o ponto de interrogação, você apenas capturará todos os caracteres (incluindo todos os espaços)

( ) esta parte significa que o segundo grupo é o espaço após o primeiro. Este deve ser o primeiro espaço. É isso que queremos inserir nosso personagem.

A substituição

#

refere-se ao primeiro conjunto de caracteres. E o * na expressão significa que o conjunto de caracteres pode ser uma palavra em qualquer tamanho, incluindo 0.

# é o caractere de inserção

\ é claro o espaço.

O resultado é colocar um # na frente de cada primeiro espaço. Se você quiser, DEPOIS do primeiro espaço, é tão simples quanto ajustar a substituição

# colocará o # após cada primeiro espaço por linha.

Este é o poder das expressões regulares. Um simples localizar e substituir pode fazer a inserção com mais precisão do que qualquer macro. É flexível, é rápido e na maioria das vezes não é tão difícil.

Aqui está um ótimo tutorial inicial que deve explicar o que é RegEx e por que é útil. [ RegExOne ]. REO é o que me fez entender

Este é um tutorial que muitas pessoas recomendam que honestamente eu não poderia fazer muito sentido. [ RegEx.Info ]

Na verdade, nunca mais voltei ao RegEx.info. Entrei direto no Documentação do Notepad ++ que era realmente neste momento muito útil. Isso e, claro, você pode testar com [ RegEx101 ]. A única coisa que você vai querer fazer é adicionar o /gm na expressão. Então você pode simplesmente colar um trecho no TestString e praticar até acertar.

    
por 13.06.2016 / 18:03