配列の各要素を正規表現で置換する
perl map 置換とかで検索するとこんな感じのコードが出てくる
my @before = ('foo', 'bar', 'baz'); my @after = map {$_ =~ s/b/B/; $_} @before;
これでもうまくいくんだけど、少々つっこみを
見た目の問題なんだけど、パターンマッチ演算子(=~)は省略すると $_ が使われるのでこの場合は省略できる
$_ は各要素のエイリアスなので @before の値も変更されてしまう
元の値がいらなければ
my @before = ('foo', 'bar', 'baz'); s/b/B/ for @before;
これで良いし
必要なら
my @before = ('foo', 'bar', 'baz'); s/b/B/ for my @after = @before;
で良い