加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl Regex:尝试修改只读值

发布时间:2020-12-16 06:08:20 所属栏目:大数据 来源:网络整理
导读:我试图在将它与正则表达式匹配后替换字符串中的空格. my $string = "watch download Buffy the Vampire Slayer Season 1 Episode 1 Gorillavid";if ($string =~ m!(Seasonsd+sEpisodesd+)!){ $1 =~ s!s+!!g; say $1;} 现在当我运行上面的代码时,我尝试
我试图在将它与正则表达式匹配后替换字符串中的空格.

my $string = "watch download Buffy the Vampire Slayer Season 1 Episode 1 Gorillavid";

if ($string =~ m!(Seasonsd+sEpisodesd+)!){

    $1 =~ s!s+!!g;

    say $1;

}

现在当我运行上面的代码时,我尝试修改了一个只读值.现在,如果我将$1的值存储在变量中,而不是尝试对该变量执行替换,则可以正常工作.

那么,有没有什么方法可以在不创建新临时变量的情况下执行替换.

PS:有人可以告诉我如何将上面的代码写成一行,因为我无法:)

解决方法

不要乱用特殊变量,只需捕获所需的数据,同时自己构建输出.

$string = "watch download Buffy the Vampire Slayer Season 1 Episode 1 Gorillavid";
if ($string =~ m!Seasons(d+)sEpisodes(d+)!){
   say("Season$1Episode$2");
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读