Quando você usa a chave *
, ela pesquisa efetivamente por
\<theword\>
O \<...\>
ao redor significa que ele procura apenas por palavras inteiras. Então bhello
não seria encontrado, no seu exemplo.
Você pode modificar os caracteres que são contados como valores que não são de palavra-chave por set iskeyword
O padrão (na minha versão) é
iskeyword=@,48-57,_,192-255
Portanto, podemos garantir que _
não faça parte disso:
set iskeyword=@,48-57,192-255,^_
Isso pode ser colocado no arquivo .vimrc
ou executado com :set
dentro de vim