Написание сложного регулярного выражения, которое позволяет вводить только те значения, которые есть в input [type=range]
Не спрашивайте, зачем мне такое понадобилось, но сижу ломаю голову с регулярками, чтоб попытаться достичь такого результата.
Цель: позволять в input
вводить только ТЕ значения, которые есть у input[type=range]
. Все бы ничего, но должны поддерживаться и натуральные и дробные числа (включая отрицательные – то есть со знаком -
перед числом).
Вот есть несколько полей и ползунков:
<div class="pinned-default">
<span>Диапазон – от -25 до 25. Ход ползунка – 0.1</span>
<br/>
<input type="text" class="range-value-input" />
<br/>
<input type="range" min="-25" max="25" step="0.1" />
</div>
<div class="pinned-default">
<span>Диапазон – от 60 до 450. Ход ползунка – 1</span>
<br/>
<input type="text" class="range-value-input" />
<br/>
<input type="range" min="60" max="450" step="1" />
</div>
<div class="pinned-default">
<span>Диапазон – от 2000 до 20000. Ход ползунка – 50</span>
<br/>
<input type="text" class="range-value-input" />
<br/>
<input type="range" min="2000" max="20000" step="50" />
</div>
Зачем это регулярки?
val > min && val < max && (val / step) % 1 === 0
.
Вижу что появился хороший ответ, но если Ваша цель - потренировать регулярку, то вот моя идея: -?(((2[0-4])|([0-1]\d))(.\d+)?|(25)) Для диапазона от -25 до 25 включительно.
но для каждого диапазона придется чуток модифицировать.
В чем суть регулярки. Минус может быть может не быть - не влияет никак ни на что далее. Если первая цифра - 2, то вторая может быть от 0 до 5, для соблюдения диапазона. Если первая цифра 0 или 1, то вторая может быть любой, так как за 25 все равно не выйдем. Дальше, если целое число в пределе от -24 до 24, то дробная часть может быть, а может и не быть. Если есть - состоит из любых значений, все равно за диапазон не выйдем. Либо 25.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Задача: Найти в массиве нули, удалить с данного индекса и добавить в конец массива
Дилетантский вопросВпервые сталкиваюсь с JavaScript
Пытаюсь делать вот так, но ничего не получается: