自管理部署上的文本索引属性
本页介绍版本3文本索引的行为。
不区分大小写。
文本索引不区分大小写。 文本索引不区分大小写字符,例如 e
和E
。
文本索引支持大小写折叠,如 Unicode8.0 字符数据库大小写折叠 中指定的那样 :
Common C
Simple S
土耳其语言的特殊 T
带变音符号的字符,例如
é
和É
非拉丁字母中的字符,例如西里尔字母中的
И
和и
。
以前的文本索引版本仅对非变音符号拉丁字符[A-z]
不区分大小写。 以前的文本索引版本将所有其他字符视为不同字符。
不区分变音符号
文本索引不区分变音符号。 文本索引不区分包含变音标记的字符及其未标记的对应字符,例如é
、 ê
和e
。 更具体地说,文本索引会去掉 Unicode8.0 字符数据库属性列表 中归类为变音符号的标记 。
以前版本的文本索引将带有变音符号的字符视为不同字符。
分词分隔符
对于分词,文本索引使用 Unicode 中分类为Dash
、Hyphen
、Pattern_Syntax
、Quotation_Mark
、Terminal_Punctuation
和White_Space
8的分隔符。0 字符数据库属性列表 。
例如,在短语Il a dit qu'il «était le meilleur joueur du
monde»
中,引号( «
、 »
)和空格都是分隔符。
该索引的先前版本将«
视为术语«était
的一部分,将»
视为术语monde»
的一部分。
索引项
文本索引会对索引字段中的术语进行标记和词干处理,以生成索引项。该索引使用简单的特定于语言的后缀词干。对于集合中的每个文档,文本索引都会为每个索引字段中的每个唯一词干术语存储一个索引项。
支持的语言和停用词
MongoDB支持各种语言的文本搜索。 文本索引使用简单的特定于语言的后缀词干提取。 文本索引还会删除英语中特定语言的停用词,例如the
、 an
、 a
和and
。 有关支持的语言列表,请参阅自管理部署上的文本搜索语言。
要为文本索引指定语言,请参阅为自托管部署上的文本索引指定默认语言。
稀疏属性
文本索引始终是稀疏索引。当您创建文本索引时,MongoDB 会忽略 sparse
选项。
如果现有或新插入的文档缺少文本索引字段(或该字段为空或为空数组),MongoDB 不会为该文档添加文本索引项。
了解详情
要学习;了解文本索引限制,请参阅自管理部署上的文本索引版本。