|
@@ -9,6 +9,7 @@ import (
|
|
|
"math/big"
|
|
|
"net/http"
|
|
|
"reflect"
|
|
|
+ "regexp"
|
|
|
"runtime"
|
|
|
"strconv"
|
|
|
"strings"
|
|
@@ -21,7 +22,7 @@ const (
|
|
|
SIZE = 30
|
|
|
FilterQuery = `{"query": {"filtered": {"filter": {"bool": {"must": [%s]}},%s}}`
|
|
|
QStr = `{"query":{"bool":{"must":[$and],"must_not":[],"should":[$or],"minimum_should_match":1}}}`
|
|
|
- NgramStr = `{"query":{"bool":{"must":[%s],"should":[%s],"minimum_should_match": 1}}}`
|
|
|
+ NgramStr = `{"query":{"bool":{"must":[%s],"should":[%s],"minimum_should_match":1}}}`
|
|
|
NgramMust = `{"bool":{"must":[%s]}}`
|
|
|
NgramMustAndNot = `{"bool":{"must":[%s],"must_not":[%s]}}`
|
|
|
minq = `{"multi_match": {"query": "%s","type": "phrase", "fields": [%s]}}`
|
|
@@ -77,8 +78,9 @@ type Es interface {
|
|
|
}
|
|
|
|
|
|
var (
|
|
|
- SR = strings.Replace
|
|
|
- VarEs Es
|
|
|
+ SR = strings.Replace
|
|
|
+ VarEs Es
|
|
|
+ filterReg = regexp.MustCompile(`,\s*"should"\s*:\s*\[\s*\]\s*,\s*"minimum_should_match"\s*:\s*1`)
|
|
|
)
|
|
|
|
|
|
type KeyConfig struct {
|