Может ли кто-нибудь объяснить мне, почему вывод этого маленького perl script является "foofoo" (а не "foo" )?
#!/usr/bin/perl -w
my $var="a";
$var=~s/.*/foo/g;
print $var."\n";
Без опции g это работает, хотя я бы это сделал, но почему глобальный вариант сопоставляет шаблон дважды?
В bash вывод "foo" как ожидалось
echo "a"|sed -e "s/.*/foo/g"
Любое объяснение будет оценено.