Регулярные одно или две цифры последовательностей чисел в input.value () [duplicate]

Преобразование строки в int более сложно, чем просто преобразование числа. Вы думаете о следующих проблемах:

  • Строка содержит только цифры 0-9?
  • Что происходит с - / + до или после строки? Возможно ли это (ссылаясь на учетные номера)?
  • Что случилось с MAX _- / MIN_INFINITY? Что произойдет, если строка 99999999999999999999? Может ли машина обрабатывать эту строку как int?
1
задан Paul Roub 27 September 2013 в 15:54
поделиться

3 ответа

Используйте это регулярное выражение: ^\d{5}(, ?\d{5})*$

Он указывает 5 цифр в начале: ^\d{5} и любое количество других комбинаций запятой, пробелом и 5 цифр: (, ?\d{5})*

2
ответ дан Brian Stephens 25 August 2018 в 15:23
поделиться

Вы можете использовать:

var s='12345,45678, 12345';
var m = s.match(/^(?:\d{5},\s?)*\d{5}$/);
1
ответ дан anubhava 25 August 2018 в 15:23
поделиться
<html>
    <head>
        <title></title>
        <script type="text/javascript">
            function Validate(txt) {
                txt.value = txt.value.replace(/[^, 0-9]+/g, '');
            }
        </script>
    </head>
    <body>
        <form>
            <input type = "text" id ="txt" onkeyup = "Validate(this)" />
        </form>
    </body>
</html>
0
ответ дан Draken 25 August 2018 в 15:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: