From 9da56a412ab99239ae60fa02c0d85c64a5d0f55d Mon Sep 17 00:00:00 2001 From: yihaoDeng Date: Thu, 31 Mar 2022 13:56:09 +0800 Subject: [PATCH] add fuzzy search --- source/libs/index/inc/indexFstRegex.h | 2 +- source/libs/index/src/indexFstRegex.c | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/source/libs/index/inc/indexFstRegex.h b/source/libs/index/inc/indexFstRegex.h index 50b9cae7ff..a58906c242 100644 --- a/source/libs/index/inc/indexFstRegex.h +++ b/source/libs/index/inc/indexFstRegex.h @@ -63,7 +63,7 @@ typedef struct { FstRegex *regexCreate(const char *str); -void regexSetup(FstRegex *regex, uint32_t size, const char *str); +// void regexSetup(FstRegex *regex, uint32_t size, const char *str); // uint32_t regexStart() diff --git a/source/libs/index/src/indexFstRegex.c b/source/libs/index/src/indexFstRegex.c index ec41a7f58e..2b8c8b6708 100644 --- a/source/libs/index/src/indexFstRegex.c +++ b/source/libs/index/src/indexFstRegex.c @@ -14,6 +14,7 @@ */ #include "indexFstRegex.h" +#include "indexFstDfa.h" #include "indexFstSparse.h" FstRegex *regexCreate(const char *str) { @@ -26,9 +27,11 @@ FstRegex *regexCreate(const char *str) { memcpy(orig, str, sz); regex->orig = orig; -} -void regexSetup(FstRegex *regex, uint32_t size, const char *str) { - // return - // return; + // construct insts based on str + SArray *insts = NULL; + + FstDfaBuilder *builder = dfaBuilderCreate(insts); + regex->dfa = dfaBuilderBuild(builder); + return regex; }