Per abbinare una parola si può usare
\v(\w+)
Dall'aiuto di vim :h \w
:
\ w carattere parola: [0-9A-Za-z_]
Funziona esattamente come descritto nel manuale. Tuttavia, voglio abbinare parole che contengono caratteri oltre a-z
, ad esempio
prästgården . La corrispondenza dell'espressione regolare \v(\w+)
con il
prästgården produce invece tre partite:
prästgården
^^ ^^^ ^^^^
Come abbinare le parole contenenti caratteri oltre a-z
? Il mio locale è impostato in inglese e, se possibile, mi piacerebbe mantenerlo così.
Modifica: le parole potrebbero non appartenere a una singola locale, ad es
prästgården
treść
\p{Word}
posto di una classe di caratteri POSIX. Ci sono molti casi di eccezione nella gestione della classe di caratteri POSIX di Perl, che eviti quando usi invece le proprietà Unicode.
[[:alpha:]]\+
in questo caso) dovrebbero fare quello che vuoi qui, ma secondo i documenti di Vim (:help regex
) non funziona: "Questi elementi funzionano solo per i caratteri a 8 bit". Funziona qui con Vim 7.3 su OS X 10.8, ma Vim 7.3 su Linux non funziona, quindi suppongo che ci sia qualcosa di specifico per Apple su questo Vim che lo permetta. Scoprirai anche che farlo attraverso l'associazione Vim Perl fallisce, anche se Perl ha un ottimo supporto Unicode. Potrebbe essere necessario passare a uno script Perl esterno, quindi è possibile attivare il supporto Unicode completo.