Adicione cotação no início e no final de cada linha no Notepad ++

89

Tenho uma lista (em um arquivo .txt) que gostaria de converter rapidamente para a sintaxe JavaScript, então quero fazer o seguinte:

AliceBlue
AntiqueWhite
Aqua
Aquamarine
Azure
Beige
Bisque
Black
BlanchedAlmond

e convertê-lo em um array literal ...

var myArray = ["AliceBlue", "AntiqueWhite", ... ]

Eu tenho a lista no notepad ++ e preciso de uma expressão reg para adicionar "no início da linha e ",no final e remover a quebra de linha ... alguém tem uma solução rápida para fazer isso? Sou péssimo com RegEx.

Muitas vezes tenho que realizar essas tarefas, então saber como fazer isso seria um grande benefício para mim. Muito Obrigado

Mike Sav
fonte

Respostas:

246

Você não poderá fazer isso em uma única substituição; você terá que executar algumas etapas. É assim que eu faria:

  1. Encontrar (no modo de expressão regular):

    (.+)

    Substituir com:

    "\1"

    Isso adiciona as aspas:

    "AliceBlue"
    "AntiqueWhite"
    "Aqua"
    "Aquamarine"
    "Azure"
    "Beige"
    "Bisque"
    "Black"
    "BlanchedAlmond"
  2. Encontre (no modo estendido):

    \r\n

    Substitua por (com um espaço após a vírgula, não mostrado):

    , 

    Isso converte as linhas em uma lista separada por vírgulas:

    "AliceBlue", "AntiqueWhite", "Aqua", "Aquamarine", "Azure", "Beige", "Bisque", "Black", "BlanchedAlmond"

  3. Adicione a var myArray =atribuição e as chaves manualmente:

    var myArray = ["AliceBlue", "AntiqueWhite", "Aqua", "Aquamarine", "Azure", "Beige", "Bisque", "Black", "BlanchedAlmond"];
BoltClock
fonte
5
Se você deseja automatizar isso, você pode começar a gravar uma macro e, em seguida, executar estas etapas.
BoltClock
1
Pouco antes da etapa "Localizar (no modo estendido)", verifique / transforme o caractere de fim de linha (EOL) do arquivo no formato UNIX. Faça Editar-> Conversão EOL-> formato UNIX.
Andre Mikulec
No Windows, 2. Encontre (no modo estendido): \ r \ n
Rami A.
@Rami A .: Verdadeiro, o arquivo de origem pode ter sido criado no Windows, então faria sentido usar terminações de linha do Windows. Observe que 1) Notepad ++ é apenas para Windows de qualquer maneira e, mesmo assim, 2) isso não significa que qualquer arquivo aberto terá terminações de linha do Windows.
BoltClock
A opção \ 1 do Notepad ++ é específica ou é padrão para RegEx? Onde você encontra uma lista desses? Eu usei isso para um menu HTML <LI> e foi PERFEITO! Eu gostaria de saber mais alguns truques possíveis que eu poderia usar.
BillyNair
9
  • Uma maneira simples é substituir \ n (nova linha) por "," (aspas duplas vírgula aspas) após anexar aspas duplas no início e no final do arquivo.

exemplo:

      AliceBlue
      AntiqueWhite
      Aqua
      Aquamarine
      Beige
  • Replcae \ n por ","

      AliceBlue","AntiqueWhite","Aqua","Aquamarine","Beige
  • Agora acrescente "(aspas) no início e no final

     "AliceBlue","AntiqueWhite","Aqua","Aquamarine","Beige"

Se o seu texto contém linhas em branco, você pode usar a expressão regular \ n + em vez de \ n

exemplo:

      AliceBlue

      AntiqueWhite
      Aqua


      Aquamarine
      Beige
  • Replcae \ n + por "," (no modo regex)

      AliceBlue","AntiqueWhite","Aqua","Aquamarine","Beige
  • Agora acrescente "(aspas) no início e no final

     "AliceBlue","AntiqueWhite","Aqua","Aquamarine","Beige"
user3322017
fonte
Simples e eficaz.
f1dave
5
  • Posicione o cursor no final do texto.
  • Pressione SHIFTe ->. O cursor se moverá para a próxima linha.
  • Pressione CTRL-Fe digite ,"Substituir por:" e pressione ENTER.

Você precisará colocar uma citação no início de seu primeiro texto e no final do último.

Gahlen Fridley
fonte
1
Muito útil e curto. Obrigado!
Yogesh de
2
  1. Coloque o cursor no início da linha 1.
  2. clique em Editar> Editor de Colunas. Coloque "no texto e pressione Enter.
  3. Repita 2, mas coloque o cursor no final da linha 1 e coloque ", e pressione Enter.
abhisekpaul
fonte