Bibliothèque de recherche de texte en mémoire, en métro .NET Core.
Coresearch utilise un index inversé avec une structure de données Trie boostée pour indexer le critère de recherche atomique du contenu aux ressources. L'algorithme TRIE rend Coresearch plus élastique et permet à la fois de requête en mots exacts et d'opérations comme la recherche floue, les jokers et la correspondance des personnages. Une structure de trie entière est stockée en mémoire pour de meilleures performances. L'ensemble du projet a été écrit comme un projet d'apprentissage, alors soyez conscient de mettre la production
Trie sur Wikipedia
source <string path> <string extension>
alias: load
exemple:
> source ./ *.txt
get <string key>
alias: search
exemple:
> search cars
output:
<resource names for key cars>
Modes de requête:
query <string prefix> <query mode: . or *>
Exemple 1:
> query c ?
output:
<resource names for keys: ca, cb, c5, co, c1, ...>
Exemple 2:
> query c *
output:
<resource names for keys: ca, cabbage, c4a541, cars, cardio, cantaloupe, ...>
Exemple 3:
> query cars
output:
<resource names for key cars>
add <string resource name> <string content>
alias: insert
exemple:
> add english-dict.txt house
delete <string key>
exemple:
> delete sport
echo <string content>
exemple:
> echo hello
output:
hello
debug <bool>
exemple:
> debug true
flush
exemple:
> flush
info
exemple:
> flush
output:
Nodes in trie: 4651175
Words inserted: 15513389
Resource files: 2227
Memory usage: 1044944640 bytes
clear
exemple:
> clear
Tournez le mode de débogage
--debug <bool>
-d
Définir la taille maximale de la mémoire (en octets)
--memory-limit <int>
-m
Pré-processus chaque mot avant d'insérer
--normalize <bool>
-n
Modèle pour éliminer les caractères indésirables, utilisé pour chaque mot avant d'insérer
--pattern <regex>
-p
Chargez les données d'un chemin spécifique au début
--source <string>
-s
Définir l'extension pour le chargement des données au début
--extension <string>
-e
Coresearch est autorisé sous le MIT.