我正在尝试做一个简单的字符串替换,但没有成功。
#!/usr/bin/perl
$var = "M4S120_appscan";
$var1 = "SCANS";
$path =~ s/$var/$var1/;
print "Path is $path"
Run Code Online (Sandbox Code Playgroud)
输出应该是"Path is SCANS"
,但它在“输出”中不打印任何内容。
要将字符串中的“M4S120_appscan”替换为“SCANS”:
$str = "Path is M4S120_appscan";
$find = "M4S120_appscan";
$replace = "SCANS";
$str =~ s/$find/$replace/;
print $str;
Run Code Online (Sandbox Code Playgroud)
如果这是你想要的。
小智 0
替换运算符s///
接受三个参数:我们要在其中进行替换的字符串(在您的示例中是一个$path
变量)、搜索项 ( $var
) 和替换项$var1
。
正如您所看到的,您尝试将空字符串中的“M4S120_appscan”替换为“SCANS”,因为 $path 未初始化。在进行替换之前需要初始化 $path,例如:
$path = "M4S120_appscan";
Run Code Online (Sandbox Code Playgroud)