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

问题描述 投票:1回答:1

我声明具有默认值的字符串标志,如下所示:

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

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

go command-line-interface command-line-arguments
1个回答
0
投票

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

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

请参阅相关问题:Can command line flags in Go be set to mandatory?

© www.soinside.com 2019 - 2024. All rights reserved.