Você pode usar algo como:
%s/\('[0-9]\),/',/
Ele usa \( e \) para criar um grupo de seleção que é referenciado por (que significa primeiro grupo) no lado substituto.
Eu tenho as seguintes linhas:
'0,
'1,
'2,
'3,
Como colocar uma citação antes da vírgula?
Já experimentei o seguinte:
%s/[0-9],/&/g
so & aqui substitui o padrão correspondente ...
Você pode usar algo como:
%s/\('[0-9]\),/',/
Ele usa \( e \) para criar um grupo de seleção que é referenciado por (que significa primeiro grupo) no lado substituto.
Se você quiser mover a cota de lugar antes do número para um lugar antes da vírgula, use o agrupamento
%s/'\([0-9]\),/',/
ou para colocar outra aspa antes da vírgula, inclua-a no primeiro grupo:
%s/\('[0-9]\),/',/
Normalmente eu uso macros para tarefas como esta.
qqEi'<Esc>0jq3@q
fará o trabalho (note que a parte <Esc> é uma tecla de escape pressionada, e não 5 teclas separadas). Aqui está um resumo:
qq começa a gravar uma macro e a atribui à chave q . Ei'<Esc> vai para o final da palavra e insere o ' . 0j vai para o começo da próxima linha. q termina a gravação. 3@q reproduz a macro 3 vezes, aplicando a mesma coisa às outras 3 linhas. Substitua 3 pelo número de linhas que você tem.
%s/,$/',/g
$ é o fim da linha
Talvez você tenha se esquecido de definir a forma geral em que você precisa que isso funcione. Para fazer exatamente o que você pediu sem adivinhar, esta é a solução mais simples (preguiçosa!) Que funciona para sua entrada de exemplo:
%s/,/',/
Se você quiser lidar com casos mais complexos também, deve escrever exemplos melhores, incluindo o caso mais complexo, em que você precisa da substituição de padrão para funcionar e, idealmente, um exemplo da saída de destino também.