Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   RegExp: Строка содержит только цифры и не более пяти точек (https://javascript.ru/forum/misc/84433-regexp-stroka-soderzhit-tolko-cifry-i-ne-bolee-pyati-tochek.html)

Neznajka 07.09.2022 14:23

RegExp: Строка содержит только цифры и не более пяти точек
 
Помогите, пожалуйста, составить регулярное выражение, подтверждающее, что строка содержит только цифры и не более пяти точек - в любом сочетании. Каждый из этих символов может находиться в любом месте строки. Максимум, до чего дошёл сам:
Код:

/^[0-9.]+$/g
Но это не ограничивает число точек. Если втиснуть квалификатор {0,5} - то он трактуется как-то превратно (как список допустимых символов) :(

voraa 07.09.2022 14:32

/^(\d*\.){0,5}\d*$/
Может так сойдет?
Правда пустая строка тоже подойдет

Neznajka 07.09.2022 14:38

To voraa:
Да, вполне подходит - пустые строки у меня отфильтровываются предварительно.
Большое спасибо!

Neznajka 07.09.2022 14:44

Ага, ещё один нюанс обнаружился - цифры (хотя бы одна) должны присутствовать обязательно. Что нужно добавить к RegExp'у ? Или это лучше проверять отдельно?

Aetae 07.09.2022 14:53

/^(?=.*\d)(\d*\.){0,5}\d*$/

voraa 07.09.2022 14:57

Проще отдельно проверять.

Neznajka 07.09.2022 15:08

Aetae,
Супер! Подходит. Спасибо большое!


Часовой пояс GMT +3, время: 02:37.