completo Texto
Anotação que marca uma propriedade como tendo um índice de texto completo, que permitirá query de texto completo sobre ela. As pesquisas de texto completo são feitas usando o predicado TEXT
, por exemplo:
realm.query<Person>("bio TEXT 'computer dancing'").find()`
Somente propriedades de cadeia podem ser marcadas com essa anotação e ela não pode ser combinada com as anotações de Índice e Chave Primária.
Atualmente, o índice de texto completo suporta este conjunto de funcionalidades:
Pesquisar de token ou palavra, por exemplo
bio TEXT 'computer dancing'
encontrará todos os objetos que contêm as palavrascomputer
edancing
em sua propriedadebio
.Os tokens são diacríticos e não diferenciam maiúsculas de minúsculas, por exemplo,
bio TEXT 'cafe dancing'
ebio TEXT 'café DANCING'
retornarão o mesmo conjunto de correspondências.A pesquisa de prefixo de token pode ser feita usando
*
, comobio TEXT comp*
.Ignorar resultados com determinados tokens é feito usando
-
, por exemplobio TEXT 'computer -dancing'
encontrará todos os objetos que contêmcomputer
, mas nãodancing
.Os tokens são definidos por um tokenizador simples que utiliza as seguintes regras:
Os tokens só podem consistir em caracteres alfanuméricos do ASCII e do suplemento Latin-1.
Todos os outros caracteres são considerados espaços em branco. Em particular, palavras que usam
-
comofull-text
são feitas uma divisão em dois tokens.
Observe as seguintes restrições antes de usar a pesquisa de texto completo:
A pesquisa de sufixo de token como
bio TEXT '*cing'
não é suportada.Somente caracteres alfanuméricos ASCII e Latin-1 estão incluídos no índice (a maioria dos idiomas ocidentais).
Somente a correspondência booleana é suportada, ou seja, "encontrada" ou "não encontrada". Não é possível classificar os resultados por "relevância".