2017-06-20 63 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