perl s///r;在Sublime中中断语法高亮

brccelvz  于 2023-05-29  发布在  Perl
关注(0)|答案(2)|浏览(180)

我有一个Perl脚本和编辑器,我使用的是Sublime。
在下面的代码行之后,语法高亮显示器中断。
my $new = ($old =~ s/cat/dog/r);

这是因为/r。但为什么呢?
如何解决这个问题或任何替代方案?

zzlelutf

zzlelutf1#

这是一个问题,存在于您的版本,v3.1.1,又名build 3176。

这在v3.2版本中被修复,也就是build 3200。

升级到最新的v3.x(v3.2.2)包含在您当前的许可证中(如果您有)。
但是,我强烈建议更新到Sublime Text 4的最新版本,即Build 4143。我使用的是dev版本,它比公共版本稍微领先,并且您的代码也在那里正确地突出显示:

代码在Build 4143中看起来相同。
如果你是Sublime Text的许可用户,你需要一个ST4的新许可证,但是与旧版本相比,有 * 这么多的新功能和改进,这绝对是值得的,以支持开发者。

lymnna71

lymnna712#

在5.14中添加了r改性剂。你的编辑的荧光笔显然没有意识到这一变化。
您可以使用以下代码:

my $new = $old;
$new =~ s/cat/dog/;

合并:

( my $new = $old ) =~ s/cat/dog/;

相关问题