为什么sqlite fts5 Unicode61标记器不支持CJK(中日韩)?

为什么sqlite fts5 Unicode61标记器不支持CJK(中日韩)?,sqlite,unicode,full-text-search,fts5,Sqlite,Unicode,Full Text Search,Fts5,我原以为可以支持CJK-- 我验证我的sqlite是否支持fts5 sqlite> pragma compile_options; BUG_COMPATIBLE_20160819 COMPILER=clang-9.0.0 DEFAULT_CACHE_SIZE=2000 DEFAULT_CKPTFULLFSYNC DEFAULT_JOURNAL_SIZE_LIMIT=32768 DEFAULT_PAGE_SIZE=4096 DEFAULT_SYNCHRONOUS=2 DEFAULT_WAL_

我原以为可以支持CJK-- 我验证我的sqlite是否支持fts5

sqlite> pragma compile_options;
BUG_COMPATIBLE_20160819
COMPILER=clang-9.0.0
DEFAULT_CACHE_SIZE=2000
DEFAULT_CKPTFULLFSYNC
DEFAULT_JOURNAL_SIZE_LIMIT=32768
DEFAULT_PAGE_SIZE=4096
DEFAULT_SYNCHRONOUS=2
DEFAULT_WAL_SYNCHRONOUS=1
ENABLE_API_ARMOR
ENABLE_COLUMN_METADATA
ENABLE_DBSTAT_VTAB
ENABLE_FTS3
ENABLE_FTS3_PARENTHESIS
ENABLE_FTS3_TOKENIZER
ENABLE_FTS4
ENABLE_FTS5
但令我惊讶的是,它根本找不到任何CJK单词。为什么呢

sqlite> CREATE VIRTUAL TABLE ft5_test USING fts5(content, tokenize = 'porter unicode61 remove_diacritics 1');
sqlite> INSERT INTO ft5_test values('为什么不支持中文 fts5 does not seem to work for chinese');
sqlite> select * from ft5_test where ft5_test = '中文';
sqlite>
sqlite> select * from ft5_test where ft5_test = 'Chinese';
为什么不支持中文 fts5 does not seem to work for chinese
-------------更新----------

我花了相当长的时间来建立一个icu版本。我在这里分享了我的经历

据我所知,使用icu版本是支持CJK的唯一方法,fts5不支持icu令牌化器


我把我的问题留在这里,以防其他人对这个问题有新的想法。

你最好在sqlite邮件列表上询问写这个东西的人在哪里,但是如果我正在阅读生成unicode61解析器使用的查找表的tcl脚本,它只使用Lu和Ll类别代码点,我想你的很多文本都是Lo。谢谢我在这里问它