sub condense { $_[0] =~ s/\s+/ /g } $in =~ s/()(.*?)(<\/tag>)/ $1 . condense($2) . $3 /ge;