#!/usr/bin/perl -w use strict; my @regexen = ( qr/"((?:\\.|[^"])+)"/, qr/"([^"]+)"/, ); for () { for my $r (@regexen) { print "$_\t"; print "\t$r"; if (/$r/) { print "\tMatch\t($1)\n"; } else { print "\tNo match.\n"; }; }; }; __DATA__ "foo\"bar"