2

我对解析命令行选项有一组特定的要求。我的意图与 Linux beep 命令没有什么不同,您可以在其中指定多个不同频率和持续时间的哔声。我只是碰巧在使用 4 位颜色。

有效输入系列的示例:

-z 1 -r 5 -g 2 -b 12 -z 4 --color=ffe --zone=3 --color=8,8,4

-z 或 --zone 是启动新选项组的分隔符。可以使用 -r/g/b 设置或 --color 指定颜色。我希望自己处理解析。

无效输入示例:

--zone=1 -r 12 -g 15 -z 3 -r 8 -g 6 -b 10 -b 18

这正好说明了为什么我不能只使用一系列选项。我的程序需要能够识别并提醒在--zone=1与下一个区域之间,它没有找到一个-b,在参数之间-z 3和结尾之间,它找到了两个-b。使用 提供的数组getOptionValues(),我只会看到 -r/g/b 各有两个,并假设没有问题,因为它们与任何类型的父级或组无关。

我需要知道 Commons CLI 是否可以处理重复的选项,或者我是否需要切换到另一个解析器,或者我是否最好为公认的少量选项编写自己的解析器。

4

0 回答 0