如何限制字符串标志中可接受的值范围?

时间:2019-12-21 11:37:29

标签: go command-line-interface command-line-arguments

我用默认值声明一个字符串标志,如下所示:

animalFlag := flag.String("typeOfAnimal", "Cat", "Type of animal")

我要强制用户只能提供一个特定的字符串(例如"Dog""Lion"),而不是一些随机的字符串(例如"Rose")。 如何在Go中执行此操作?

1 个答案:

答案 0 :(得分:0)

flag软件包不支持限制标志的有效/可接受值集。

您可以做的是执行标志值验证,这通常是一个好习惯:在应用程序启动时检查该值,如果提供的值无效(根据您的任意规则),则显示一条错误消息并暂停

查看相关问题:Can command line flags in Go be set to mandatory?