首页 > 解决方案 > 变量字符串匹配

问题描述

我有一个接受命令行输入的程序。输入类似于:

ruby myprogram.rb --option1 --option2=foo

现在,我用空格分割命令并保留一个命令数组。例如,这将是上面示例的数组:

['option1','option2=foo']

在代码中,有一个有效命令列表:

valid_cmd = %w(
    --option1
    --option2
    --option3
)

使用已解析命令列表,检查输入命令是否有效的最佳方法是什么?这还有一个更困难的部分。假设option2有可选参数。例如,与单独--option2=anArgument一样有效。--option2另一方面,option3具有强制性参数 - 即。--option3=foo是有效的,但--option3不是。我们如何解释这一点?

标签: ruby

解决方案


推荐阅读