package hostparse import "strings" // MatchZone возвращает наиболее специфичную зону из zones, которой принадлежит host // (host равен зоне или является её поддоменом). Зоны и host ожидаются нормализованными. func MatchZone(host string, zones []string) (string, bool) { best := "" for _, z := range zones { if host == z || strings.HasSuffix(host, "."+z) { if len(z) > len(best) { best = z } } } return best, best != "" }