0
我需要解析一个JSON对象一样,但{"f": 1, "i": 2, "g": 5, ...}
定期不像JSON对象,输入可以在对象具有零个或一个...野牛零或语法文件一个出现
所以,这是错了对象{"f": 1, "f": 1, "i": 2, ...}
,因为它有“f两次”的关键。
而且,这个对象很好{"i": 2}
,因为它只是关键“我”,它不会出现一次以上。
这是我试过的。我知道它不起作用,但我不知道如何设定它是正确的。
RuleMemberList
: RuleMember
{{$$ = {}; $$[$1[0]] = $1[1];}}
| RuleMemberList ',' RuleMember
{$$ = $1; $1[$3[0]] = $3[1];}
;
RuleMember
: I ':' RuleString
{$$ = [$1, $3];}
| G ':' RuleString
{$$ = [$1, $3];}
| F ':' RuleFinder
{$$ = [$1, $3];}
| A ':' RuleAction
{$$ = [$1, $3];}
| T ':' RuleTarget
{$$ = [$1, $3];}
| P ':' RuleNumber
{$$ = [$1, $3];}
| C ':' RuleChance
{$$ = [$1, $3];}
| L ':' RuleLayers
{$$ = [$1, $3];}
| R ':' RuleString
{$$ = [$1, $3];}
| E ':' RuleEvents
{$$ = [$1, $3];}
| B ':' RuleBinds
{$$ = [$1, $3];}
;
我可以将它定义为零或某种情况吗?
它看起来很好,但没有称为“错误”的功能。你是否熟悉我可以用来返回错误的另一个函数? – sidanmor
找到解决方案:扔“消息”工作正常。使用JISON(https://zaa.ch/jison/) – sidanmor