Регулярное выражение для почтовых индексов KW - PullRequest
0 голосов
/ 23 февраля 2012

Я пытаюсь сделать регистр без учета регистра для моего раздела доставки, который перехватывает все почтовые индексы, которые находятся в разделе KW, кроме KW9. У меня есть следующее регулярное выражение, которое перехватывает все почтовые индексы KW, но как мне добавить к этому исключение для KW9?

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

Есть идеи?

Edit:

Я скопировал и вставил неправильный регистр ex, вот фактический регистр 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

Ответы [ 3 ]

1 голос
/ 23 февраля 2012

Используйте этот простой.

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

Добавление /i делает его нечувствительным к регистру.

Это соответствует KW1-8 и KW10-89. Это не соответствует KW9 или KW90-99

0 голосов
/ 23 февраля 2012

Попробуйте это:

/^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
0 голосов
/ 23 февраля 2012

Попробуйте это:

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

Это должно поймать все регистры без учета регистра KW9, кроме kw9 (строчные буквы)

...