我在嘗試驗證RegEx的電話號碼。如何驗證電話號碼或在文本字段中允許帶有RegEx的空格?
我被提供有這樣的回答:
Regular Expression for Phone Number
限定驗證以下的電話號碼的表達:+44(0)1234 123456
我已經從JS到移植它C#,是
var regexPhone = new Regex(@"^(?!([^-]*-){5})(\+\d+)?\s*(\(\d+\))?[- \d]+$");
這工作,但驗證也適用於允許空白的電話號碼字段,例如一個傳真(不是每個人都有一箇舊式的設備了)。
我該如何改變這個以允許空格,以及驗證上面的數字?
編輯:下面的答案適用於上述號碼,但它的失敗:+ 44(0)20 1234 1234.有什麼我可以爲此添加?
var regexPhone = new Regex(@"^(?!([^-]*-){5})(\+\d+)?\s*(\(\d+\))?[- \d]+$|^$");
編輯:
這是有效的,對於上面的數字,但是它失敗了:`+ 44(0)20 1234 1234`。還有什麼我可以爲此添加的?更新問題以反映。 – DaveDev 2011-02-17 14:09:14
@DaveDev,看我的更新。 – Blindy 2011-02-17 14:27:18