my @parsed; if ( @parsed = $content =~ /^\s*(sub\s+\w+).+?(?:(#.+)|())$/ ) { local $, = "\n"; print @parsed; }