簡體   English   中英

JS:數字和空格的正則表達式?

[英]JS: regex for numbers and spaces?

我正在使用happyJS並使用下面的正則表達式進行電話驗證

phone: function (val) {
        return /^(?:[0-9]+$)/.test(val);
    }

然而,這只允許數字。 我希望用戶也能夠輸入空格

238 238 45383

知道為什么要return /^(?:[0-9 ]+$)/.test(val); 是不是在搞鬼?

這是我建議的解決方案:

/^(?=.*\d)[\d ]+$/.test(val)

(?=.*\d)斷言輸入中至少有一位數字。 否則,只有空格的輸入可以匹配。

請注意,這不會對位數(僅確保至少有 1 個數字)或空格應出現在輸入中的位置施加任何限制。

嘗試

phone: function (val) {
    return /^(\s*[0-9]+\s*)+$/.test(val);
}

至少必須存在一個數字才能使上述操作成功,但請在此處查看正則表達式示例

嘗試

/^[\d ]*$/.test("238 238 45383")

 console.log(/^[\d ]*$/.test("238 238 45383"));

您可以嘗試使用下面的正則表達式來檢查數字和空格。

function isTextAndNumberSpaceOnly(text) {
    var regex = /^[0-9 ]+$/;
    if (regex.test(text)) {
        return true;
    } else {
        return false;
    }
}

我個人使用這段代碼並且它工作正常:

function validateMobile(mob) 
{ 
     var re = /^09[0-9]{9}$/
     if(mob.match(re))
         return true;
     else
        return false; 
}

暫無
暫無

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

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