Regex Perl:将字符串替换为/without"+&引用;签名
我正在试着更换部分绳子。目前我正在使用一种简单的方法,如下所示:Regex Perl:将字符串替换为/without"+&引用;签名,regex,perl,Regex,Perl,我正在试着更换部分绳子。目前我正在使用一种简单的方法,如下所示: my $text = $ARGV[0]; my $in_d = $ARGV[1]; my $out_d = "Sample_text"; $text =~ s/$in_d/$out_d/; 如果涉及“+”符号,则上述代码似乎不起作用。 例如,对于代码: my $text = "I+here starving here"; my $input_d = "I\+here"; my $out_d = "I"; $text =~ s
my $text = $ARGV[0];
my $in_d = $ARGV[1];
my $out_d = "Sample_text";
$text =~ s/$in_d/$out_d/;
如果涉及“+”符号,则上述代码似乎不起作用。
例如,对于代码:
my $text = "I+here starving here";
my $input_d = "I\+here";
my $out_d = "I";
$text =~ s/$input_d/$out_d/;
print $text."\n";
输出:
I+here starving here
我如何确保文本被替换而不考虑涉及的字符?提前感谢您的帮助。使用
\Q
,\E
序列来转义字符块
\Qfoo+\E
所以,应该是这样
$text =~ s/\Q$input_d\E/$out_d/;
您也可以使用该功能实现相同的效果。