2017-06-20 91 views
0

我需要驗證在C#中使用RegEx的特定運營商運營商的電話號碼,例如, 94773650101 94是國家代碼 77是運營商運營商,它也可以是76 如何在C#中使用RegEx驗證此操作。我需要一個格式。驗證特定國家運營商運營商電話號碼正則表達式c#

我已經試過

var match = Regex.Match(mobileNo, @"\d947(\d7|6)\d{7}/"); 
+0

請發表你有什麼到目前爲止已經試過。這不是一個可以讓你複製粘貼的代碼。除非你的代碼有問題,否則沒有人可以幫助你。 – Abhishek

+0

嗨,感謝您的回覆,var match = Regex.Match(mobileNo,@「\ d947(\ d7 | 6)\ d {7} /」); – Isham

+0

你需要什麼類型的驗證?如果只有兩個字符,最好使用string.Substring(2,2)來獲取字段。如果您試圖測試包括空格在內的電話號碼中的字符數,那麼正則表達式是適當的。 – jdweng

回答

2

一切都非常簡單,試試這個:^947[76]\d{7}$

。在你的正則表達式的錯誤:\ d 947(\ d 7 | 6) \ d {7} /

我標記爲粗體。您不需要在9477|6之前使用\d, \d是任意數字。 而/最後呢?

UPD爲前導零:

^(00)?947[76]\d{7}$

+0

非常感謝你的答案對我有用,還有一件事我怎麼能說在94前可以有兩個00,有時候它可能不會太多,所以如何改變我的根據這種情況的模式。 – Isham

+0

@Isham,舉例? –

+0

可以有一個手機號碼0094763650397或94773596258我怎麼能結合這種情況。 – Isham