Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.17.74.227] |
|
Сообщ.
#1
,
|
|
|
Всем привет. Помогите с регуляркой под javascript. У нее должны быть такие ограничения:
1 - если не дробное число, то максимум в числе символов 6, естественно ноль в начале не должен ставится, т.е. не должно быть такого как: 087126 2 - если же дробное, то до точки максимум также 6 символов, а после точки 3, ну и аналогично, чтобы в начале числа не могли поставить ноль Почему такие ограничения - я использую тип поля в БД mysql decimal(9,3) поэтому хочу, чтобы работники сайта вводили корректно числа, чтоб в базе не "слизывало" числа |
Сообщ.
#2
,
|
|
|
Цитата ^[1-9]\d{0,5}(?:\.\d{1,3})?$ |
Сообщ.
#3
,
|
|
|
Цитата ViktorXP @ Цитата ^[1-9]\d{0,5}(?:\.\d{1,3})?$ 0.234 не пропускает, а должно прошу прощения, что не уточнил когда говорил о том, чтобы ноль в начале не пропускало...ноль не должно пропускать в таких случаях как: 007676 07676 00.2323 и тд |
Сообщ.
#4
,
|
|
|
а если так
Цитата ^(?:0|[1-9]\d{0,5})(?:\.\d{1,3})?$ |
Сообщ.
#5
,
|
|
|
Цитата ViktorXP @ а если так Цитата ^(?:0|[1-9]\d{0,5})(?:\.\d{1,3})?$ точку не дает поставить допустим 0.8 |
Сообщ.
#7
,
|
|
|
спасибо, работает, я повесил проверку на событие keyup, что и было не верно Добавлено а если нужно добавить запятую, чтобы 0.2 и 0,2 пропускало, то будет так? ^(?:0|[1-9]\d{0,5})(?:(,|\.)\d{1,3})?$ |
Сообщ.
#8
,
|
|
|
можно проще
Цитата ^(?:0|[1-9]\d{0,5})(?:[\.,]\d{1,3})?$ |
Сообщ.
#9
,
|
|
|
Цитата ViktorXP @ можно проще Цитата ^(?:0|[1-9]\d{0,5})(?:[\.,]\d{1,3})?$ спасибо |