相关疑难解决方法(0)

Raku:捕获标记的效果在“更高”处丢失

以下 Raku 脚本:

#!/usr/bin/env raku
use v6.d;

grammar MyGrammar
{
    rule TOP { <keyword> '=' <value> }
    token keyword { \w+ }
    token value { <strvalue> | <numvalue> }
    token strvalue { '"' <( <-["]>* )> '"' }
    token numvalue { '-'? \d+ [ '.' \d* ]? }
}

say MyGrammar.parse('foo = 42');
say MyGrammar.parse('bar = "Hello, World!"');
Run Code Online (Sandbox Code Playgroud)

有以下输出:

?foo = 42?
 keyword => ?foo?
 value => ?42?
  numvalue => ?42?
?bar = "Hello, World!"?
 keyword => ?bar?
 value => …
Run Code Online (Sandbox Code Playgroud)

regex grammar raku

6
推荐指数
2
解决办法
120
查看次数

标签 统计

grammar ×1

raku ×1

regex ×1