Para combinar uma palavra, pode-se usar
\v(\w+)
Na ajuda do vim :h \w
:
\ w caractere da palavra: [0-9A-Za-z_]
Isso funciona exatamente como descrito no manual. No entanto, quero combinar palavras que contenham caracteres além a-z
, por exemplo,
prästgården . A correspondência da expressão regular \v(\w+)
com o
prästgården gera três correspondências:
prästgården
^^ ^^^ ^^^^
Como combinar palavras que contenham caracteres além a-z
? Meu local está definido como inglês e, se possível, eu gostaria de mantê-lo dessa maneira.
Editar: as palavras podem não pertencer a um único local, por exemplo
prästgården
treść
\p{Word}
vez de uma classe de caracteres POSIX. Existem muitos casos de exceção no tratamento da classe de caracteres POSIX do Perl, que você evita ao usar as propriedades Unicode.
[[:alpha:]]\+
, neste caso) devem fazer o que você deseja aqui, mas de acordo com os documentos do Vim (:help regex
), isso não acontece: "Esses itens funcionam apenas para caracteres de 8 bits." Por acaso, funciona aqui com o Vim 7.3 no OS X 10.8, mas o Vim 7.3 no Linux não funciona, então suponho que haja algo específico da Apple sobre esse Vim que permita. Você também verá que fazê-lo através da ligação do Vim Perl também falha, mesmo que o Perl tenha um suporte Unicode muito bom. Pode ser necessário alternar para um script Perl externo, para ativar o suporte completo a Unicode.