#!/usr/bin/perl my $test = 'abc , def'; for my $sub qw/trim_start trim_end trim_start trim_end/ { $test =~ /([\s\w]+),([\s\w]+)/; $sub->($1, $2); } sub trim_start { while (@_) { my $string = shift @_; $string =~ s/\A\s+//ms; print "$string\n"; } } sub trim_end { while (@_) { my $string = shift @_; $string =~ s/\s+\z//ms; print "$string\n"; } }