coresearch
v1.0.0
.NET核心跨平台,内存,全文搜索库,用于构建搜索引擎
Coresearch使用带有增强TRIE数据结构的倒置索引,用于将原子搜索标准从内容到资源索引。 Trie算法使Coresearch更具弹性,并允许精确的单词查询和操作,例如模糊搜索,通配符和角色匹配。整个Trie结构都存储在内存中,以获得更好的性能。整个项目都是学习项目,所以要注意投入生产
Trie在Wikipedia上
source <string path> <string extension>
alias: load
例子:
> source ./ *.txt
get <string key>
alias: search
例子:
> search cars
output:
<resource names for key cars>
查询模式:
query <string prefix> <query mode: . or *>
示例1:
> query c ?
output:
<resource names for keys: ca, cb, c5, co, c1, ...>
示例2:
> query c *
output:
<resource names for keys: ca, cabbage, c4a541, cars, cardio, cantaloupe, ...>
示例3:
> query cars
output:
<resource names for key cars>
add <string resource name> <string content>
alias: insert
例子:
> add english-dict.txt house
delete <string key>
例子:
> delete sport
echo <string content>
例子:
> echo hello
output:
hello
debug <bool>
例子:
> debug true
flush
例子:
> flush
info
例子:
> flush
output:
Nodes in trie: 4651175
Words inserted: 15513389
Resource files: 2227
Memory usage: 1044944640 bytes
clear
例子:
> clear
转动调试模式
--debug <bool>
-d
设置内存的最大大小(在字节中)
--memory-limit <int>
-m
插入之前的每个单词预处理
--normalize <bool>
-n
删除每个单词之前使用不需要字符的模式,然后插入
--pattern <regex>
-p
从特定路径开始加载数据
--source <string>
-s
设置用于加载数据的扩展
--extension <string>
-e
Coresearch在MIT下获得许可。