use strict;
my $str = '("197 STATION ROAD, KINGS HEATH, BIRMINGHAM B14 7TB",52.434992,-1.8990985)
(\\"9-12, BOW STREET, LONDON, WC2E 7AH\\",51.5136001,-0.1229336)
(\\"14 STATION ROAD, LONDON SE20 7BQ\\",51.41886,-0.0545021)
\\"14 Station road London SE20 7BQ UK\\"
"14 Station road London SE20 7BQ UK"
';
my $regex = qr`^\(?\\?\"(\d{1,3}[-]?\d{0,3})[\s|,|,\s]?(.*[A-Za-z])\\?\",?(\d{1,2}?.?\d{3,9})?,?([-|+|\s]\d{1,2}?.?\d{3,9})?[A-Za-z]?\)?`mp;
my $subst = '$1 $2 [$3] [$4]';
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