use strict;
my $str = 'John Smith,johnsmith1@gmail.com,johnsmith2@gmail.com,johnsmith3@gmail.com
Taylor Smith,taylorsmith@gmail.com
Jack Smith,jacksmith1@gmail.com,jacksmith@gmail.com
';
my $regex = qr/^([^,@\n]+),(.+)\R?/mp;
my $subst = '$2,$1\\n';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html