При использовании регулярных выражений может встать задача написания шаблона, определяющего число из интервала от X до Y, а не просто числа определенной длины. Удобного механизма для этого не предусмотрено и приходится составлять громоздкие шаблоны для каждого случая. Например для промежутка от 125 до 2819 шаблон буден выглядеть следующим образом (online генератор):
1 |
(12[5-9]|1[3-9][0-9]|[2-9][0-9]{2}|1[0-9]{3}|2[0-7][0-9]{2}|28[01][0-9]) |
Очевидно, что если границы не известны заранее, а меняются во время выполнения, то для создания таких шаблонов нужна функция, которая будет составлять их по указанным границам промежутка. Ниже приводится миграция Python генератора https://github.com/dimka665/range-regex на Java.