Как я могу исключить ввод 0 в этом регулярном выражении? Пользователь должен иметь возможность ввести любое число ... но не нольRegEx - Исключить ноль
^([0-9]*|\d*\.\d{1}?\d*)$
Спасибо.
Как я могу исключить ввод 0 в этом регулярном выражении? Пользователь должен иметь возможность ввести любое число ... но не нольRegEx - Исключить ноль
^([0-9]*|\d*\.\d{1}?\d*)$
Спасибо.
в следующем регулярное выражение
^(?!0*(\.0+)?$)(\d+|\d*\.\d+)$
Не соответствует
0
0.0
.0
Но позволяет
.1
0.01
1.00
1.1
01.01
10.10
1
Я думаю ваше решение лучше, чем мое. Но вы ввели проблему. '\ d {1}?' отличается от '\ d?'. Первая делает '{1}' ленивым (без разницы ==> требуется одна цифра), а вторая - '\ d'. Таким образом, ваше выражение принимает, например, "1." что версия OPs не примет. Я думаю, что это решение будет заменено на '^ (?! 0 * (. 0 +)? $) (\ D | \ d * \. \ D +) $'. Если вы исправите эту ошибку, вы получите мой ответ и я удалю свой ответ. – stema
Он не соответствует '01', например – SERPRO
Вы, парни, правы, я удалил' {1} ', который ничего не значит, и сделал ошибку, заменив ее на'? '. Исправлено и совпадение '01'. –
Если я понимаю ваше требование, использовать [1-9]
вместо [0-9]
или \d
:
^([1-9]*|[1-9]*\.[1-9]{1}?[1-9]*)$
Попробуйте это:.^([1-9] +) \ d + $ Для этого необходимо ввести по крайней мере, 1 цифра от 1-9
или^([1-9] ). \ d $ Это не потребует от вас ничего вводить но ограничить то, что вы вводите в 1-9
Вам просто нужно изменить: * [0-9] для [1-9] */d для [1-9]
Оригинал: ^([0-9]*|\d*\.\d{1}?\d*)$
Решение: ^([1-9]*|[1-9]*\.[1-9]{1}?[1-9]*)$
\ д является [0-9]
Что об этом:
^((?:[1-9][0-9]*)(?:\.[0-9]+)?)$
Match:
1
5
10
22
5000
1.0
10.10
123.456
Нет матча:
0
00
007
0.0
0.000
0.50
0.01
5,432.10
1,234,567
10.
Вы можете дополнительно зафиксировать его до определенных диапазонов, как описано здесь:
Эта работа только с натуральными числами до 5 цифр и ограничить пять 0 цифры слева (вы можете персонализировать этот предел)
/^[0]{0,5}[1-9]\d{0,4}$/
матч:
1
01 .. 000001
0100000 .. 0000010000
не совпадают:
0
00 .. 00000
только '0' или любое числовое значение, равное 0, как '.0' и т.д.? – Gumbo
Судя по разделителю, OP хочет, чтобы числа с плавающей запятой обрабатывались, игнорируя математический ноль, т.е. не хочет соответствовать '0',' 0.0', '.0', '000' и т. Д. Правильно ли это? –
Хорошо, может быть, я не объяснил это правильно. Я имел в виду, что пользователь не должен иметь возможность вводить такие вещи, как 0 или 0.0 или 0.000, и т. Д. ... но им нужно разрешить вводить 0.1, 0.01, 0.001 ... 1.2 и т. Д. –