gpt4 book ai didi

perl - 在 Perl 替换表达式中连接字符串

转载 作者:行者123 更新时间:2023-12-02 05:26:06 26 4
gpt4 key购买 nike

我有一个具有重复模式的字符串,我想用另一个字符串替换每次出现的这种模式。替换字符串是通过连接一组其他字符串形成的。一个例子如下。我首先尝试使用 . 运算符进行连接,如图所示。

但输出本身包含点,所以 Perl 不将其视为运算符,而是文字 .

#!/usr/bin/perl
use warnings;
use strict;

my $start = 'not-so-';
my $end = '-but-a-little-bad';
my $string = 'I am a good boy. Infact I am a very good boy';
print "Before: $string\n";
>>>> $string =~ s/(good)/$start.$1.$end/g;
print "Later : $string\n";

所以我去掉了.,我的语句变成了$string =~ s/(good)/$start$1$end/g;,输出符合预期。但是,我觉得这样的声明可能会导致以后出现维护问题。

我的问题:是否有比这更好的连接字符串的方法?

最佳答案

你记法

$string =~ s/(good)/$start$1$end/g;

很好。如果你愿意,你也可以写

$string =~ s/(good)/$start . $1 . $end/ge;

但它是完全等价的。

关于perl - 在 Perl 替换表达式中连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13075687/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com