Попробуйте это
/^GY[1-9](?!\d)/i
Ваше регулярное выражение совпадает, потому что после вашей цифры может быть что угодно.
Я использую отрицательное прогнозное предположение (?!\d)
, чтобы гарантировать отсутствие цифры после вашего [1-9]
.
Флаг i
в конце делает регистр сопоставления нечувствительным, поэтому нет необходимости в [gG][yY]
См. Здесь здесь, в Regexr
Редактировать:
Когда вторая часть может иметь только 1 начальную цифру, вы можете попробовать это
^GY[1-9]\s?[1-9][a-z]{2}
Посмотрите ее здесь на Regexr
Значения начинаются с «GY», затем цифры от 1 до 9, затем дополнительный пробел, затем еще одна цифра и две буквы.