Al fine di sostituire ogni occorrenza di "&" a "& &" nel campo dalla linea di corrente a 30 più linee, ho emetto :.,+30s/\\&/\\&\\&/g
ma Vim dice "Pattern non trovato ". Sto sfuggendo al carattere speciale "&" con doppio backslash "\".vim: ricerca e sostituzione per "&"
16
A
risposta
13
Prova a non scappare tutto - :.,+30s/&/&&/g
sembra funzionare per me.
10
Non è necessario sfuggire alla e commerciale nella prima parte di un'espressione regolare. Ha solo un significato speciale nella seconda parte (sostituibile).
Si cercano motivi che dicano "\ &" e sostituirli con motivi che indicano "\ & \ &".
Il modo più semplice per sostituire è solo:
:.,+30s/&/&&/g
1
può anche essere osservazione utile che se avete bisogno di cambiare la posizione & ad esempio: _&
al &_
il & deve essere sfuggito solo nelle dichiarazioni sostitutive dell'espressione sostitutiva:
:.,+30s/ &/\& /g
^
Problemi correlati
- 1. Ricerca e sostituzione VIM
- 2. Vim di ricerca e sostituzione efficienza
- 3. VIM: come preservare caso per la ricerca e sostituzione
- 4. Ricerca incrementale Vim durante la sostituzione
- 5. Ricerca interattiva/sostituzione regex in Vim?
- 6. Ricerca e sostituzione Vim: confinare su alcune righe
- 7. Ricerca e sostituzione Vim, aggiunta di una costante
- 8. Javascript ricerca e sostituzione
- 9. Ricerca e sostituzione in una gamma di riga e colonna
- 10. Asserzione positiva e sostituzione con Vim?
- 11. vim sostituzione regex
- 12. Caret ricerca e sostituzione nella shell Bash
- 13. Ricerca e sostituzione di testo con PHPWord
- 14. Eclipse, ricerca e sostituzione di espressioni regolari
- 15. Ricerca e sostituzione di lotti per Sublime Text 2
- 16. VIM: ricerca e sostituzione delle prime occorrenze N di una parola
- 17. vim utilizzando contenuto di una variabile all'interno di ricerca e sostituzione di espressione
- 18. Ricerca incrementale Vim
- 19. ricerca e la sostituzione senza consumare quello che stai cercando per
- 20. regex vim per la sostituzione di spazi tra virgolette
- 21. vim ricerca blocco visivo/sostituire solo la sostituzione prima occorrenza su una linea
- 22. come eseguire la sostituzione condizionale utilizzando vim
- 23. Vim: sostituzione della fine della riga
- 24. Vim ricerca incrementale risultato successivo
- 25. Ricerca e sostituzione del testo in IntelliJ IDEA
- 26. Ricerca di più caratteri e sostituzione con JQuery
- 27. Perl: ricerca regex passante e sostituzione tramite variabili
- 28. ricerca e sostituzione in bash usando le espressioni regolari
- 29. Come differire la sostituzione per accedere a var dalla ricerca?
- 30. vim: ricerca interattiva e sostituirlo con perl espressioni regolari compatibili
Per chiarire: questo non è perché '&' non è un metacarattere: mentre nel pattern è vero (a meno che '&' sia stato fatto scappare o la modalità molto-magica sia stata attivata), nella stringa di sostituzione '&' significa lo stesso di '\ 0': l'intera sottostringa corrispondente. Poiché "l'intera sottostringa corrispondente" è una stessa e commerciale, questa soluzione funziona. Si noti inoltre che se l'opzione 'magic' è stata disattivata, l'istruzione "& in replacement rappresenta l'intero pattern abbinato" è falsa in un numero di comandi incluso ': s'. – ZyX