perl -E 'say for map s/(æ|ø|å)/ {qw(æ ae ø oe å aa)}->{$1}/ger, qw(rød gul blå)'
perl -E 'say for map s/(æ|ø|å)/"".{qw(æ ae ø oe å aa)}->{$1}/ger, qw(rød gul blå)'
上面的第一行给了我syntax error at -e line 1, near "}->"
第二个 prints roed
,正如预期的那样gul
。blaa
这是编译器的弱点还是有一些我看不到的原因?我在 5.10、5.22 和 5.26 版本中测试并得到了这种行为。