我声明具有默认值的字符串标志,如下所示:
animalFlag := flag.String("typeOfAnimal", "Cat", "Type of animal")
我想强迫用户只能提供一个特定的字符串(例如"Dog"
,"Lion"
),而不能给出一些随机的字符串,例如"Rose"
。如何在Go中执行此操作?
flag程序包不支持限制标志的有效/可接受值集。
您可以执行标志值验证,这通常是一个好习惯:在应用程序启动时检查该值,如果提供的值无效(根据您的任意规则),则显示一条错误消息,以中止该操作。