Подскажите с регуляркой

hell0w0rd

Продвинутый новичок
Есть регулярка для парсинга роутов:
Код:
\{(?:([^{}]+):)*([a-zA-Z][a-zA-Z0-9_]*)\}
Собственно она умеет матчиться на:
Код:
/users/{i:id}
/users/{\d+:id}
/users/{[0-9]+:id}
Но если хочется ограничить кол-во цифр, ясное дело все фейлится:
Код:
/posts/{[0-9]{4}:year}
Как учесть этот случай?
 

hell0w0rd

Продвинутый новичок
AmdY, да, я уже подумал об этом. Но как это реализовать без паттерна, если нужно один раз, например
 
Сверху