refactor parser packages

This commit is contained in:
windyboy
2025-12-24 17:23:41 +08:00
parent dbde6524b3
commit b82b707a25
14 changed files with 227 additions and 176 deletions
@@ -0,0 +1,24 @@
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
}