|
@@ -20,7 +20,7 @@ var (
|
|
|
regReplKV2 = regexp.MustCompile("(.+?[\u4e00-\u9fa5))][\\s\u3000\u2003\u00a0]*[::].*[((]?[^\r\n\\s\u3000\u2003\u00a0标段包]+?[))]?)([一二三四五六七八九十]+[、..][^一二三四五六七八九十]+?)")
|
|
|
regKV = regexp.MustCompile("([\\p{Han}][^,,。、.;;\r\n]{1,30}?)[::](.*)")
|
|
|
filterK = regexp.MustCompile("[((\\[【].*?[))\\]】]|<[^>].+?>|[①②③¥·;;‘“'’”,*<>((\\[【、))/\\]】??,。.\".\\s\u3000\u2003\u00a0]+|^[一二三四五六七八九十0-91234567890]+")
|
|
|
- filterValue = regexp.MustCompile("(^(无)$|.+%.*|[\r\n\\s\u3000\u2003\u00a0]+|^<.*>)")
|
|
|
+ filterValue = regexp.MustCompile("(^(无)$|.+%.*|^[\r\n\\s\u3000\u2003\u00a0]+$|^<.*>)")
|
|
|
regReplKey = regexp.MustCompile("^(包(.+[A-Za-z\\d])?|本项目|推荐|的|本次)|([约为元万亿]+|[大小]写|人民币|[全名]称|姓名)$")
|
|
|
BlockTagMap = map[string]bool{
|
|
|
"招标范围": true,
|
|
@@ -648,12 +648,14 @@ func GetKVAll(content, title string, contactFormat *ContactFormat, from int) *Jo
|
|
|
func MergeKvTags(kvTags_1, kvTags_2 map[string][]*Tag) {
|
|
|
for k, v := range kvTags_2 {
|
|
|
for _, vv := range v {
|
|
|
- if strings.TrimSpace(vv.Value) == "" {
|
|
|
+ value_vv := strings.TrimSpace(vv.Value)
|
|
|
+ if value_vv == "" {
|
|
|
continue
|
|
|
}
|
|
|
isExists := false
|
|
|
for _, vvv := range kvTags_1[k] {
|
|
|
- if vvv.Value == vv.Value && vvv.Weight == vv.Weight {
|
|
|
+ value_vvv := strings.TrimSpace(vvv.Value)
|
|
|
+ if (value_vvv == value_vv || TimeHM.ReplaceAllString(value_vvv, ReplTimeHM) == value_vv || value_vvv == TimeHM.ReplaceAllString(value_vv, ReplTimeHM)) && vvv.Weight == vv.Weight {
|
|
|
isExists = true
|
|
|
break
|
|
|
}
|
|
@@ -681,9 +683,10 @@ func GetKvTags(findkvs []*Kv, title string, tagdbs []string) map[string][]*Tag {
|
|
|
kvTags[title] = append(kvTags[title], &Tag{title, title, 0, nil, false})
|
|
|
}
|
|
|
for _, findkv := range findkvs {
|
|
|
- k, val, nextval := findkv.Key, findkv.Value, strings.TrimSpace(findkv.NextLine)
|
|
|
+ k, val, nextval := findkv.Key, strings.TrimSpace(findkv.Value), strings.TrimSpace(findkv.NextLine)
|
|
|
//val是空的话,不打标签
|
|
|
if filterValue.MatchString(val) {
|
|
|
+ log.Println(k, val)
|
|
|
continue
|
|
|
}
|
|
|
key := k
|
|
@@ -724,7 +727,7 @@ func GetKvTags(findkvs []*Kv, title string, tagdbs []string) map[string][]*Tag {
|
|
|
if strings.TrimSpace(nextval) == "" {
|
|
|
continue
|
|
|
}
|
|
|
- if GetAppointTags(nextval, tagdbs).Len() > 0 || GetAppointTags(k, tagdbs).Len() > 0{
|
|
|
+ if GetAppointTags(nextval, tagdbs).Len() > 0 || GetAppointTags(k, tagdbs).Len() > 0 {
|
|
|
continue
|
|
|
}
|
|
|
}
|