while () { 1 while s/^ ~ .*? \K _ /+/x; print "$_"; } #### while () { s/^ ~ .*? \K ( .+ ) / ( my $x = $1 ) =~ tr-_-+-; $x /xe; print "$_"; }