$^I = ".bak"; @ARGV = "inplace.txt"; my $flag, my @arr; while(<>) { if (!$flag && /^\s*Tag {/) { $flag = 1; } elsif ($flag) { if (/^\s*}/) { $flag = 0; } elsif (/^\s*Name/) { (@arr) = split(/"/, $_, 3); @arr[1] =~ s/\s//g; $_ = join('"', @arr); $flag = 0; } } print; }