2-значное значение по определению меньше 100 (максимальное значение - 99), поэтому вам не нужно проверять это.Это регулярное выражение удовлетворит ваши другие потребности:
^\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{6}$
Он начинается с любых 2 цифр;затем либо 01-09
, либо 10-12
;сопровождаемый одним из 01-09
, 10-19
, 20-29
или 30-31
;затем 6 цифр.
Демонстрация по регулярному выражению 1011
Обновление
Если вы не можете использовать \d
в своемшаблон, замените его на [0-9]
т.е.
^[0-9]{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])[0-9]{6}$