簡體   English   中英

JavaScript注冊表格中用於傳真號碼驗證的正則表達式

[英]Regular expression for fax number validation in a JavaScript registration form

關於正則表達式,我是一個完全的新手。 即使閱讀了有關它們的指南,我仍然很難制定自己的指南。 我正在嘗試獲取表格以驗證+12345678910格式的傳真號碼。 我有一些代碼,但是它允許我提交混合數字和字母,以及提交帶有空格的數據,而無需完全填寫Faxnum文本框。 我非常感謝您提供有關如何更熟練使用正則表達式的表格和提示的幫助。

var fax = document.registration.faxnum; 
faxval(fax);

function faxval(fax)
{
    var numbers = /[\+? *[1-9]+]?[0-9 ]+/; //Bad regex
    if (fax.value.match(numbers))
    {
        document.getElementById("faxmsg").innerHTML=("Everything is OK.");
        faxmsg.style.color="green";
    }
    else
    {
        faxmsg.innerHTML=("Invalid fax number.");
        faxmsg.style.color="red";
    }
};

要匹配+12345678910之類的數字,請嘗試: \\+1[2-9][0-9]{9}

我假設+1部分是國際號碼代碼,234是區號,567是交換局,8910是號碼的其余部分。 此模式還將匹配一個數字,例如+12125551212。

美國或加拿大電話號碼的首位數字必須為2到9。因此,我們可以將其作為首字符( [2-9] )。 這樣,其余的數字將是9位數字,從0到9( [0-9]{9} )。

如果要允許-或。 您也可以使用: \\+1(|\\.|\\-)[2-9][0-9]{2}(|\\.|\\-)[0-9]{3}(|\\.|\\-)[0-9]{4} (|\\.|\\-)部分的意思是“不允許字符或。字符或-字符”。

暫無
暫無

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

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