只是一个简单的数据表 包括两个字段 关键字 和 关键字的描述数据表只有几千条数据 字符串是一句话,包含中文和英文字符,为的是提高查询效率
2 回答
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
省事点用 sqlite fts4 全文索引好了,这样可以一条字段存入多条关键字,
查询时给句子拆分下加入 OR 语法,select 用下 snippet 函数得到匹配的关键字。
把数据存到 sqlite fts4 全文索引表(sqlite 有在 python 标准库里不需要其他依赖,可以用内存数据库),fts4 默认会按标点和空格分词,所以处理中文时预先插入空格就没问题(插入 \r 之类也行)。
如果要求判断子字符串而不是按单词判断,存入数据时先用空格把字母和字符逐个隔开,查询时也逐个隔开并加上适当引号和 * 号,
而如果是想分词却担心有黄词漏网的话,存入数据和查询句子都用二元分词就可以了。
添加回答
举报
0/150
提交
取消