-4
foreach $suitename (@suitename)
{
foreach $fileLines (@fileLines)
{
if (index($fileLines, $suitename) != -1)
{
$str = $fileLines;
$find = "msg=\"/a-z/\"";
$replace = "msg=\"f\"";
$find = quotemeta $find;
$str =~ s/$find/$replace/g;
print $str;
}
}
}
嗨,我想用$ replace替换所有$ find,msg =“random stuff”,但我没有设法这样做。我所做的就是让我所有的味精=“随机的东西”这里@msgperl搜索并替换随机文本
for ($i = 0; $i < scalar(@fileLines); $i++){
if ($fileLines[$i] =~ /(msg=".*") /)
{
push (@msg,"$1\n");
}
}
请指点。 非常感谢
第一个代码段不会修改'@ fileLines'。我认为你期待它这样做。如果你希望发生这种情况,你需要在'$ fileLines'上执行替换,而不是在$ str上执行替换。 – DavidO