我想将一个像通配符的模式转换为 Raku 正则表达式。目前我是这样做的:
s :global {
|| $<question-mark> = '?'
|| $<asterisk> = '*'
|| $<non-word> = \W
} = $<question-mark> ?? '.' !! $<asterisk> ?? '.*' !! "\\$<non-word>";
用反斜杠前缀每个非单词字符是否正确?也就是说,这样做会错过任何应该转义的内容吗?或者会转义任何不应该转义的内容吗?
我有点困惑为什么Raku取消了Perl 5的quotemeta
函数,这在这里将是理想的。虽然根据this question的答案,它不会经常需要,但在像这样的情况下,我只能手动编写一个我不确定是否足够的解决方案。