如何定义忽略前导空格的 Regexp::Grammar 规则?

问题描述

来自 Regexp::Grammars 文档:

令牌和规则的区别在于令牌处理任何 它里面的空格完全是一个普通的 Perl 正则表达式 将。也就是说,如果令牌中的空格序列被忽略 /x 修饰符有效,否则匹配相同的文字序列 空格字符(如果 /x 无效)。

在规则中,大多数空格序列被视为匹配 隐式子规则 <.ws>自动预定义匹配 可选的空格(即 \s*)。

...

换句话说,一个规则如:

<rule: sentence>   <noun> <verb>
               |   <verb> <noun>

相当于添加了非捕获空白匹配的标记

<token: sentence>  <.ws> <noun> <.ws> <verb>
                |  <.ws> <verb> <.ws> <noun>

有没有办法让规则忽略前导隐式 <.ws>?在上面的例子中,它等价于:

<token: sentence>  <noun> <.ws> <verb>
                |  <verb> <.ws> <noun>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)