【发布时间】:2016-01-17 14:13:45
【问题描述】:
我正在编写一个 Qi 解析器来解析 IRC 消息,转录 RFC 2812。其中的语法是一个完全普通的替代方案:
auto const hostname = shortname >> *('.' >> shortname);
auto const nickUserHost = nickname >> -(-('!' >> user) >> '@' >> host);
auto const prefix = hostname | nickUserHost;
我很困惑地看到我的测试字符串 ("D-z!D-z@mib-A3A026FF.rev.sfr.net") 匹配 nickUserHost,但不匹配 prefix。
我看到的唯一值得注意的是nickUserHost 的host 本身是根据hostname 定义的,但我不确定它会如何影响解析。
【问题讨论】:
标签: c++ parsing boost c++14 boost-spirit