使用 preg_match 验证特定语法

Validating specific syntax with preg_match

我在查看网络上有关正则表达式的示例和文档后想出了下面的代码,但是它没有按预期工作。所以根据下面的要求,只有 'ABCDEF05'、'A21 和 'C99' 应该被验证。

要求:

测试:

$arr = array('d12', '1', 'A123', 'A1234', 'AB00', 'ABCDEFG01', 'ABCDEF00', 'ABCDEF05', 'A21', 'C99');

foreach ($arr as &$key) {
   if (preg_match('/^([A-Z]{1,6})([1-9][0-9]{2})/', $key)) {
      echo "$key\n";
   }
}

使用否定前瞻:

if (preg_match('/^([A-Z]{1,6})(?!00)(\d\d)$/', $key)) {