正则表达式到特定规则

Regex to specific rule

我需要使用正则表达式重新创建此逻辑。

如果 $postcode.length > 0 且 $postcode.length < 10 且 $postcode 的第一个字符是字母(第二个或第三个字符是数字)则匹配。

我想出了以下正则表达式:

/((^[a-z]+[0-9]?[0-9]){1,9}$)/i

需要匹配这些例子:

已编辑: 我当前的正则表达式与列表中的任何示例都不匹配。我不知道为什么。任何帮助,将不胜感激。

这是一个模式:

^[A-Z](?=.?\d)[A-Z0-9 ]{0,8}$

Demo

我使用先行 (?=.?\d) 检查第二个或第三个字符是否为数字。

交替使用:

/^[a-z](?:[0-9].{0,7}|.[0-9].{0,6})$/i