Non c'è niente di sbagliato con le risposte date, ma si può fare questo:
:%s/$data\['\zsuser\ze']/sessionUser/g
\zs
e \ze
può essere usato per delimitare la parte della partita che è influenzato dalla sostituzione. Non è necessario sfuggire allo $
poiché si trova all'inizio del modello e non può corrispondere a un EOL qui. E non è necessario sfuggire allo ]
poiché non ha un valore iniziale corrispondente a [
. Tuttavia non c'è certamente alcun danno nel fuggire da questi personaggi se non riesci a ricordare tutte le regole. Vedi: help pattern.txt per i dettagli completi, ma non cercare di digerirlo tutto in un colpo solo!
Se si desidera ottenere fantasia, si può fare:
:%s/$data\['\zsuser\ze']/session\u&/g
&
si riferisce a tutto il testo corrispondente (delimitato da \zs
e \ze
se presente), in modo che diventi 'utente' in questo caso. Il \u
quando utilizzato in una stringa di sostituzione rende il carattere successivo maiuscolo. Spero che aiuti.
Non sono necessarie le fughe nella parte di sostituzione. –
Sì, ha funzionato. Grazie! – Falassion