$c =~ s#((<.*?>)|(/|\*|_|=)((?:<.*?>|[^\2])+?)(\2|$)\s?)# sub reg_fix { my $c = shift; print "Running check on '$c'\n"; $c =~ s#((<.*?>)|(/|\*|_|=)((?:<.*?>|[^\2])+?)(\2|$)\s?)# if (!$5) {$1} elsif ($2) {$1} elsif ($3 eq '/') {'' . reg_fix($4) . ' '} elsif ($3 eq '*') {'' . reg_fix($4) . ' '} elsif ($3 eq '_') {'' . reg_fix($4) . ' '}#gemio; return $c; }