2010-10-22 61 views
0

可能重複:
A comprehensive regex for phone number validation經常表達座機號碼

我的情景:

我想期待爲以下數

 +(91)-(44)-96217000 
    +(91)-44-96217000 

正則表達式我試試這個表達是不工作

static bool IsPhone(string s) 
    { 
     return Regex.IsMatch(s, @"\(?\d{2}\)?[\s\-]?\d{3}\-?\d{10}"); 
    } 
+1

如果有人不同意我的重複:http://stackoverflow.com/search?q=regex+phone – Bobby 2010-10-22 13:41:54

+1

該網站http://regexlib.com/擁有非常非常非常多的正則表達式爲您預備。 – 2010-10-22 13:42:47

回答

0

悉心爲你問的3個數字集羣,當你想到2一兩件事,10簇,當你想到8 - 我不知道有什麼有效的電話號碼無論你在哪裏,但你的例子不會匹配。

我也可以看到一個問題,您嘗試匹配parens - 與你有兩個(91-44...91)-44...將被接受。正則表達式OR |在這裏我認爲是你的朋友。

如果我不知道你的語言環境,不能幫助你,如果我是你,並且知道我會爲一個合適的手機正則表達式的谷歌 - 這些都是不平凡的。

+0

91是印度的國家代碼。 – dtb 2010-10-22 13:47:08

+0

我找到解決方案 – anbuselvan 2010-10-22 13:49:36

+0

@「\\(?\ d {2} \\)?[\ s \ - ]?\ d {2} \ - ?\ d {8} | \\(?\ d {2 } \\)[\ S \ - ] \\?(\ d {2} \\) - ????\ d {8}」 – anbuselvan 2010-10-22 13:49:57