|
@@ -5,6 +5,7 @@ import (
|
|
|
"jy/clear"
|
|
|
ju "jy/util"
|
|
|
qu "qfw/util"
|
|
|
+ "reflect"
|
|
|
)
|
|
|
|
|
|
//处理分包信息
|
|
@@ -27,7 +28,14 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
for key, val := range pkg.TableKV.Kv {
|
|
|
if tag.Key == key {
|
|
|
clearmap[k] = false
|
|
|
- sonJobResult[k] = val
|
|
|
+ var tmpval interface{}
|
|
|
+ if len(e.ClearFn[k]) > 0 {
|
|
|
+ data := clear.DoClearFn(e.ClearFn[k], []interface{}{val, j.Content})
|
|
|
+ tmpval = data[0]
|
|
|
+ } else {
|
|
|
+ tmpval = val
|
|
|
+ }
|
|
|
+ sonJobResult[k] = tmpval
|
|
|
if packagenum == 1 {
|
|
|
field := &ju.ExtField{
|
|
|
Field: k,
|
|
@@ -36,7 +44,7 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
Type: "table",
|
|
|
MatchType: "tag_string",
|
|
|
ExtFrom: "package",
|
|
|
- Value: val,
|
|
|
+ Value: tmpval,
|
|
|
Score: 0,
|
|
|
}
|
|
|
j.Result[k] = append(j.Result[k], field)
|
|
@@ -49,7 +57,14 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
for key, val := range pkg.ColonKV.Kv {
|
|
|
if tag.Key == key {
|
|
|
clearmap[k] = true
|
|
|
- sonJobResult[k] = val
|
|
|
+ var tmpval interface{}
|
|
|
+ if len(e.ClearFn[k]) > 0 {
|
|
|
+ data := clear.DoClearFn(e.ClearFn[k], []interface{}{val, j.Content})
|
|
|
+ tmpval = data[0]
|
|
|
+ } else {
|
|
|
+ tmpval = val
|
|
|
+ }
|
|
|
+ sonJobResult[k] = tmpval
|
|
|
if packagenum == 1 {
|
|
|
field := &ju.ExtField{
|
|
|
Field: k,
|
|
@@ -58,7 +73,7 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
Type: "colon",
|
|
|
MatchType: "tag_string",
|
|
|
ExtFrom: "package",
|
|
|
- Value: val,
|
|
|
+ Value: tmpval,
|
|
|
Score: 0,
|
|
|
}
|
|
|
j.Result[k] = append(j.Result[k], field)
|
|
@@ -71,7 +86,14 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
for key, val := range pkg.SpaceKV.Kv {
|
|
|
if tag.Key == key {
|
|
|
clearmap[k] = true
|
|
|
- sonJobResult[k] = val
|
|
|
+ var tmpval interface{}
|
|
|
+ if len(e.ClearFn[k]) > 0 {
|
|
|
+ data := clear.DoClearFn(e.ClearFn[k], []interface{}{val, j.Content})
|
|
|
+ tmpval = data[0]
|
|
|
+ } else {
|
|
|
+ tmpval = val
|
|
|
+ }
|
|
|
+ sonJobResult[k] = tmpval
|
|
|
if packagenum == 1 {
|
|
|
field := &ju.ExtField{
|
|
|
Field: k,
|
|
@@ -80,7 +102,7 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
Type: "space",
|
|
|
MatchType: "tag_string",
|
|
|
ExtFrom: "package",
|
|
|
- Value: val,
|
|
|
+ Value: tmpval,
|
|
|
Score: 0,
|
|
|
}
|
|
|
j.Result[k] = append(j.Result[k], field)
|
|
@@ -116,7 +138,7 @@ func PackageDetail(j *ju.Job, e *ExtractTask) {
|
|
|
func extRegBackPack(j *ju.Job, e *ExtractTask) {
|
|
|
//正则清理
|
|
|
for _, rc := range e.RuleCores {
|
|
|
- for _, pack := range j.PackageInfo {
|
|
|
+ for pk, pack := range j.PackageInfo {
|
|
|
clear, _ := pack["clear"].(map[string]interface{})
|
|
|
for k, val := range pack {
|
|
|
if b, ok := clear[k].(bool); ok && b {
|
|
@@ -131,6 +153,7 @@ func extRegBackPack(j *ju.Job, e *ExtractTask) {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ j.PackageInfo[pk] = pack
|
|
|
}
|
|
|
}
|
|
|
//通用正则清理
|
|
@@ -150,8 +173,12 @@ func extRegBackPack(j *ju.Job, e *ExtractTask) {
|
|
|
//函数清理
|
|
|
for _, pack := range j.PackageInfo {
|
|
|
for key, val := range pack {
|
|
|
- data := clear.DoClearFn(e.ClearFn[key], []interface{}{val, j.Content})
|
|
|
- pack[key] = data[0]
|
|
|
+ if reflect.TypeOf(val).String() == "float64" || reflect.TypeOf(val).String() == "int64" {
|
|
|
+ continue
|
|
|
+ } else {
|
|
|
+ data := clear.DoClearFn(e.ClearFn[key], []interface{}{val, j.Content})
|
|
|
+ pack[key] = data[0]
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|