my $string = "123A1234"; my $regex = qr/((?<=\d+))(A)\1(.*)/; my ($num, $letter, $leftover) = $string =~ $regex; ok( $num eq '123' ); ok( $letter eq 'A' ); ok( $leftover eq '4' ); ---------------------------------------------------------- my $rev_string = "4321A321"; my $rev_regex = qr/.../; # <-- what goes here?? my ($leftover, $letter, $num) = $rev_string =~ $rev_regex; ok( $num eq '123' ); ok( $letter eq 'A' ); ok( $leftover eq '4' );