我正在尝试为我的发货部分制作不区分大小写的正则表达式,该表达式捕获除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
答案 0 :(得分:1)
使用这个简单的。
/^KW[1-8][0-9]?\s?[1-9][A-Z]{2}$/i
添加/i
会使其不区分大小写。
这符合KW1-8和KW10-89。它与KW9或KW90-99不匹配
答案 1 :(得分:0)
试试这个:
^(KW|Kw|kW)9\s?[1-9][a-zA-Z]{2}$
这应该捕获所有KW9不区分大小写,除了kw9(小写)
答案 2 :(得分:0)
试试这个:
/^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