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下獲得許可。