Есть ли способ ограничить регулярное выражение до 100 символов с помощью регулярного выражения?
Ваш пример предполагает, что вы хотели бы получить число из регулярного выражения, а затем использовать это число, чтобы поместить максимальную длину в другую часть, которая позже будет найдена в регулярном выражении. Обычно это невозможно за один проход. Лучше всего иметь два отдельных регулярных выражения:
- один соответствует максимальной длине, которую вы хотите использовать
- тот, который использует ранее извлеченное значение, чтобы убедиться, что его собственное совпадение не превышает заданную длину
Если вы просто хотите ограничить количество символов, сопоставляемых выражению, большинство регулярных выражений поддерживают bounds с помощью фигурных скобок. Например,
\d{3}-\d{3}-\d{4}
будет соответствовать телефонным номерам (США): ровно три цифры, затем дефис, затем ровно три цифры, затем еще один дефис, а затем ровно четыре цифры.
Аналогично, вы можете установить верхний или нижний пределы:
\d{5,10}
означает «не менее 5, но не более 10 цифр».
<Ч />
Обновление: ОП пояснил, что пытается ограничить значение , а не длину . Мой новый ответ не используйте регулярные выражения для этого . Извлеките значение, затем сравните его с максимумом, извлеченным из параметра размера. Это гораздо менее подвержено ошибкам.