Я ответил на вопрос 280Z28 - делай то, что там было предложено. Но если вам нужен другой способ написания шаблона, вы можете попробовать:
0|1([0-9][0-9]?)?|2([0-4][0-9]?|5[0-5]?)?|[3-9][0-9]?
Это больше я хвастаюсь, чем что-либо еще. Это трудно проверить (когда я впервые написал это, я допустил ошибку, которая не была обнаружена до тех пор, пока я ее не протестировал), а не то, что вы должны использовать в своем коде.