簡體   English   中英

使用RegEx驗證負十進制數和正十進制數

[英]Validate negative and positive decimal numbers with RegEx

我正在嘗試構建一個正則表達式,它允許使用以下規則的負十進制數和正十進制數。

  1. 小數點后不能超過2位數
  2. 小數點是可選的
  3. 包括小數點在內的總長度不應超過12個字符
  4. 如果沒有小數點,則最大長度不應超過9個字符

誰能幫我嗎? 非常感謝提前。

檢查這個正則表達式。

^[+-]?[0-9]{1,9}(?:\.[0-9]{1,2})?$

這個正則表達式說

  • 標志是可選的
  • 至少一個和最多9位數作為整數部分
  • 如果有小數點,則至少有一位和最多兩位數。

這是非常簡單的,因為12 - 9 == 3兩位小數+點。

var re = new RegExp('^-?\\d{1,9}(\\.\\d{1,2})?$');

授權各

  • -123456789
  • -123456789.1
  • -123456789.12
  • 0
  • 0.12

但不會接受

  • 01234567890123超過12個月
  • 123.一個沒有小數的點
  • 123.123超過兩位小數
  • . .12 (缺少0)

我自己的正則表達式:

var rgx = /^(-{1}?(?:([0-9]{0,10}))|([0-9]{1})?(?:([0-9]{0,9})))?(?:\.([0-9]{0,3}))?$/;
var NumberToValidate = 48428;
        var valid =  /^([0-9]*[1-9][0-9]*)$/.test(NumberToValidate);
        {
        if (!valid)
    alert("Invalid Quantity!!\nThe Quantity cannot be Zero\n or a part of a Unit !");
            return false;
        }

在此輸入圖像描述

/(?:^(?:(?:[1-9][0-9]{1,})|0)\.[0-9]{1,}$)|^[1-9]+[0-9]*$/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM