$re = '/^[ABCEGHJKLMNPRSTVXY]\d[A-Za-z][ -]\d[A-Za-z]\d$/mi';
$str = 'K1G
----====
K1G 6C9
Z1R p90
w4t908
w4r io9
yt4 g7y
K1G 6C9---
K1G 6C9====
K1G 6C9K1G 6C9
K1G 6C9K1G 6C9K1G 6C9
K1G 6C9slkdjfsdklfjsdkjfhsdf
$[ABCEGHJKLMNPRSTVXY][0-9][ABCEGHJKLMNPRSTVWXYZ]{3} $[0-9][ABCEGHJKLMNPRSTVWXYZ][0-9]{3}
K1G 6C9
K1G6C9
L7J 0A1
L7J 0A2
L7J 0A3
L7J 0A4
L7J 0A5
L7J 0A6
L7J 0A7
L7J 2Y3
L7J 2Y4
L7J 2Y5
L7J 2Y6
L7J 2Y7
L7J 2Y8
L7J 2Y9
L7J 2Z1
L7J 2Z2
N0G 0B5
N0G 2X0
W0G 0B5
Y0G 2X0
N0H 2T0
Z0G 2X0';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
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 PHP, please visit: http://php.net/manual/en/ref.pcre.php