【发布时间】:2017-11-10 13:56:38
【问题描述】:
this question 的延续,可能更奇怪。
我可以吗?使用sub 连接两个regexes?
(当然,我明白,用regex怎么办)
以下代码完全错误,但我希望它能解释我想要做什么:
my Regex sub s12 ( $c, $v) {
return / <{$c}> <{$v}> /
}
my regex consonant { <[a .. z] -[aeiou]> }
my regex vowel { <[aeiou]> }
my regex open_syllable { &s12( &consonant, &vowel ) }
"bac" ~~ m:g/ <open_syllable> /;
say $/; # should be 'ba'
【问题讨论】:
-
你试过了吗:
my regex open_syllable { $(s12( &consonant, &vowel )) }? -
您是否只是在语法上遇到了问题,或者您是否试图在不让 rakudo 在解释正则表达式时变慢的情况下完成这项工作?因为您可以完全按照您展示的方式执行此操作,语法略有不同。
-
您的意思是要编写一个函数,使用核心编译器方法来解释每个正则表达式是什么,并将它们连接到较低级别? (这很有趣,但我不知道怎么做。)另外,这听起来像是
EVAL的一个可接受的用例。要么编写执行某种编译的代码,要么显式调用编译器。 -
我还在为语法而苦苦挣扎。一旦我达到我的 p6,我就会测试这个建议。
标签: raku