Files
go-caatsm/internal/adapter/parser/schedule/extract.go
T
2025-12-24 17:23:41 +08:00

25 lines
468 B
Go

package schedule
import (
"regexp"
"strings"
)
func extract(data string, exp *regexp.Regexp) map[string]string {
match := exp.FindStringSubmatch(data)
if len(match) > 0 {
return extractData(match, exp)
}
return nil
}
func extractData(match []string, re *regexp.Regexp) map[string]string {
data := make(map[string]string)
for i, name := range re.SubexpNames() {
if i != 0 && name != "" {
data[name] = strings.TrimSpace(match[i])
}
}
return data
}