boost :: spirit :: qi :: parse语法没有按预期工作

时间:2015-08-13 16:27:27

标签: c++ boost qi

我尝试编写语法来解析以下语法:

// - command
// - command value0 ... valueN
// - command -arg0 ... -argN
// - command -arg0 value0 ... valueN ... -argN value0 ... valueN
  • 每个元素都应解释为字符串
  • 在字符串中允许所有符号
  • 在命令,参数和值之间应允许多个空格
  • 参数始终以' - '
  • 开头
  • 结果应存储在结构中:

    struct Data
    {
        std::string                                       m_command;
        std::map< std::string, std::vector< std::string > m_arg;
    }
    
    • m_command应存储已解析的命令
    • m_arg应将解析后的参数和相应的值存储在向量

我在一个简短的例子here

中添加了我当前的语法

我的问题:

向量包含的条目多于可用值,因为空白也被解释为值

0 个答案:

没有答案