我想建立一個驗證器(JavaScript)的,可以從不同國家的驗證號碼,列表格式
我希望能夠用這個骨架phone('NZ', '049234567', false, false);
這是稱之爲「COUNTRY PREFIX「,」NUMBER「,」LANDLINE「,」國際「。
我該如何去做這樣的事情?
目前,我在想有什麼樣的
var phones = {
NZ: {
national: {
landline: [
'03{2,9}n(6)', //read as 03[a number between 2 and 9][a random number][repeat previous expression 6 times]
'04{2,9}n(6)', //read as 04[a number between 2 and 9][a random number][repeat previous expression 6 times]
'06{2,9}n(6)', //read as 06[a number between 2 and 9][a random number][repeat previous expression 6 times]
'07{2,9}n(6)', //read as 07[a number between 2 and 9][a random number][repeat previous expression 6 times]
'09{2,9}n(6)' //read as 09[a number between 2 and 9][a random number][repeat previous expression 6 times]
],
mobile: [
'020n(7,10)', //read as 020[a random number][repeat previous expression between 7 and 10 times]
'021n(7,10)', //read as 021[a random number][repeat previous expression between 7 and 10 times]
'022n(7,10)', //read as 022[a random number][repeat previous expression between 7 and 10 times]
'027n(7,10)', //read as 027[a random number][repeat previous expression between 7 and 10 times]
'029n(7,10)' //read as 029[a random number][repeat previous expression between 7 and 10 times]
]
},
international: {
landline: [
'+643{2,9}n(6)', //read as +643[a number between 2 and 9][a random number][repeat previous expression 6 times]
'+644{2,9}n(6)', //read as +644[a number between 2 and 9][a random number][repeat previous expression 6 times]
'+646{2,9}n(6)', //read as +646[a number between 2 and 9][a random number][repeat previous expression 6 times]
'+647{2,9}n(6)', //read as +647[a number between 2 and 9][a random number][repeat previous expression 6 times]
'+649{2,9}n(6)' //read as +649[a number between 2 and 9][a random number][repeat previous expression 6 times]
],
mobile: [
'+6420n(7,10)', //read as +6420[a random number][repeat previous expression between 7 and 10 times]
'+6421n(7,10)', //read as +6421[a random number][repeat previous expression between 7 and 10 times]
'+6422n(7,10)', //read as +6422[a random number][repeat previous expression between 7 and 10 times]
'+6427n(7,10)', //read as +6427[a random number][repeat previous expression between 7 and 10 times]
'+6429n(7,10)' //read as +6429[a random number][repeat previous expression between 7 and 10 times]
]
}
}
}
您好, 歡迎您的回答,這看起來非常類似於我在做什麼(請參閱我的編輯)您有任何其他建議嗎? – Hailwood 2011-03-09 01:50:41
如果這只是驗證而不是格式化,是的 - 但我會使用標準的正則表達式格式,而不是您自己的自制規範。 ''^ \ + 649 [2-9] \ d {6,6} $''(我不確定JavaScript的正則表達式格式) - http://en.wikipedia.org/wiki/Regular_expression解釋了正則表達式一般。 – Dre 2011-03-09 01:58:42
好吧,我說謊了一點,沒有太多的驗證,但爲了生成有效的虛擬數據(其谷歌鉻擴展im建立,這是用來幫助填寫表單與測試數據) – Hailwood 2011-03-09 02:43:30