Go 没有直接的方法来查找所有匹配项并将其作为地图返回。您可以使用 regexp 包中的FindAllStringSubmatch来获取所有匹配项和范围。这是一个例子str := "Coca Cola is refreshing < pepsi > is simply < not >"r := regexp.MustCompile(`\<(.*?)\>`)matches := r.FindAllStringSubmatch(str, -1)for _, match := range matches { if len(match) > 1 { fmt.Println("Found match: ", match[1]) }}// Output// Found match: pepsi// Found match: not