.NET Core multiplataforma, en memoria, biblioteca de búsqueda de texto completo para motores de búsqueda de edificios
Coresearch utiliza un índice invertido con una estructura de datos TRIE impulsada para indexar el criterio de búsqueda atómica del contenido a los recursos. El algoritmo de Trie hace que CoreSearch sea más elástico y permite la consulta de palabras exacta y las operaciones como la búsqueda difusa, los comodines y la coincidencia de personajes. La estructura completa de Trie se almacena en la memoria para un mejor rendimiento. Todo el proyecto fue escrito como un proyecto de aprendizaje, así que tenga en cuenta la producción.
Trie en Wikipedia
source <string path> <string extension>
alias: load
ejemplo:
> source ./ *.txt
get <string key>
alias: search
ejemplo:
> search cars
output:
<resource names for key cars>
Modos de consulta:
query <string prefix> <query mode: . or *>
Ejemplo 1:
> query c ?
output:
<resource names for keys: ca, cb, c5, co, c1, ...>
Ejemplo 2:
> query c *
output:
<resource names for keys: ca, cabbage, c4a541, cars, cardio, cantaloupe, ...>
Ejemplo 3:
> query cars
output:
<resource names for key cars>
add <string resource name> <string content>
alias: insert
ejemplo:
> add english-dict.txt house
delete <string key>
ejemplo:
> delete sport
echo <string content>
ejemplo:
> echo hello
output:
hello
debug <bool>
ejemplo:
> debug true
flush
ejemplo:
> flush
info
ejemplo:
> flush
output:
Nodes in trie: 4651175
Words inserted: 15513389
Resource files: 2227
Memory usage: 1044944640 bytes
clear
ejemplo:
> clear
Modo de depuración de giro
--debug <bool>
-d
Establezca el tamaño máximo de la memoria (en bytes)
--memory-limit <int>
-m
Preprocesar cada palabra antes de insertar
--normalize <bool>
-n
Patrón para eliminar caracteres no deseados, utilizados para cada palabra antes de insertar
--pattern <regex>
-p
Cargar datos de ruta específica al inicio
--source <string>
-s
Establecer extensión para cargar datos al inicio
--extension <string>
-e
Coresearch tiene licencia bajo el MIT.