KW邮政编码的正则表达式


Regular Expression for KW postcodes

我正试图为我的运输部分制作一个不区分大小写的正则表达式,该表达式捕获除KW9之外的KW部分中的所有邮政编码。我有下面的正则表达式,它可以捕获所有的KW邮政编码,但我如何为此添加KW9的异常?

^[kK][wW][1-9]'s?[1-9][a-zA-Z]{2}$

有什么想法吗?

编辑:

我复制并粘贴了错误的reg ex,这是实际的reg ex:

^[kK][wW][1-9]{2}'s?[1-9][a-zA-Z]{2}$

KW区域中的有效邮政编码为KW 1-9和KW 10-17(但[kK][wW][1-9]{2}将验证它们),格式为(不区分大小写)KW、1/2位数字、可选空白、一个位数字和2个字母。有效的邮政编码为KW1 1AA,无效的邮政编码是KW9 1AA

使用这个简单的。

   /^KW[1-8][0-9]?'s?[1-9][A-Z]{2}$/i

添加/i使其不区分大小写。

这与KW1-8和KW10-89相匹配。它与KW9或KW90-99 不匹配

试试这个:

^(KW|Kw|kW)9's?[1-9][a-zA-Z]{2}$

这应该捕获除KW9(小写)之外的所有不区分大小写的KW9

试试这个:

/^kw([1-8]|1[0-7])'s?[1-9][a-z]{2}$/i

我已经启用了"不区分大小写"选项。对于1-8+10-17,我刚刚使用了(…|…)语法。如果你不需要捕获这个号码,你可以使用"非捕获"前缀:

/^kw(?:[1-8]|1[0-7])'s?[1-9][a-z]{2}$/i