package archiver import ( "path/filepath" "strings" ) func getGlobRoot(path string) string { // Splitte den Pfad in seine Komponenten pathSplit := strings.Split(path, string(filepath.Separator)) // Durchlaufe die Pfadsegmente, um nach dem ersten '*' zu suchen for i, split := range pathSplit { if strings.Contains(split, "*") { // Kombiniere den Pfad bis zum ersten '*' Segment combined := filepath.Join(pathSplit[0:i]...) // Falls der Pfad absolut ist, füge den führenden Separator hinzu if filepath.IsAbs(path) { return string(filepath.Separator) + combined } // Falls das erste Segment ein "." ist, gib den relativen Pfad zurück if pathSplit[0] == "." { return "." + string(filepath.Separator) + combined } // Andernfalls gib den kombinierten Pfad ohne Anpassung zurück return combined } } // Falls kein '*' gefunden wurde, gib den originalen Pfad zurück return path }