C# 电话号码Regex

C# 电话号码Regex,c#,mysql,C#,Mysql,我需要一个电话号码的正则表达式,其中包括国家代码、区号和电话号码。电话号码的格式应与以下格式完全相同:001-253-3478887或90-312-4900203。 我试过这个,但不起作用。正确的格式应该是什么?如何获取电话号码信息 (\(\d{3}-))?\d{3}-\d{4} 根据您给出的两个示例,这将起作用 ^\d{2,3}\-\d{3}-\d{7}$ 根据您给出的两个示例,这将起作用 ^\d{2,3}\-\d{3}-\d{7}$ 那怎么办 \d{2,3}\-\d{3}\-\d{

我需要一个电话号码的正则表达式,其中包括国家代码、区号和电话号码。电话号码的格式应与以下格式完全相同:
001-253-3478887
90-312-4900203
。 我试过这个,但不起作用。正确的格式应该是什么?如何获取电话号码信息

(\(\d{3}-))?\d{3}-\d{4}

根据您给出的两个示例,这将起作用

 ^\d{2,3}\-\d{3}-\d{7}$

根据您给出的两个示例,这将起作用

 ^\d{2,3}\-\d{3}-\d{7}$
那怎么办

\d{2,3}\-\d{3}\-\d{7}
那怎么办

\d{2,3}\-\d{3}\-\d{7}

您可以查看以下内容:

((\d{2,3}-))\d{3}-\d{7}

您可以查看以下内容:

((\d{2,3}-))\d{3}-\d{7}
此正则表达式将匹配所有国家/地区代码。国家代码1和1-684在其他答案中无效。它还将阻止国家代码(如1-42)被允许,因为国家代码中唯一应该有分隔符的时间是当它是四位数时。如果最终得到的国家/地区代码中没有分隔符,请使用以下代码:

^((\d{4})|(\d{1,3}))\-\d{3}-\d{7}$
此正则表达式将匹配所有国家/地区代码。国家代码1和1-684在其他答案中无效。它还将阻止国家代码(如1-42)被允许,因为国家代码中唯一应该有分隔符的时间是当它是四位数时。如果最终得到的国家/地区代码中没有分隔符,请使用以下代码:

^((\d{4})|(\d{1,3}))\-\d{3}-\d{7}$

数字格式肯定(至少)取决于国家代码?如果没有,为什么还要麻烦将它们格式化存储?为什么不把数字储存起来,然后在你的展示层格式化呢?你会有其他的国家代码吗?有些国家/地区代码是1或4位数字,因此您可以有数字,如1-253-3478887或1-001-253-3478887。另外,为什么存储一个带前导零,而不存储另一个?换句话说,国家代码将如何格式化?它可以是任何我不知道如何检查和编写适用于所有国家的正则表达式的国家。当然,数字格式将取决于(至少)国家代码?如果没有,为什么还要麻烦将它们格式化存储?为什么不把数字储存起来,然后在你的展示层格式化呢?你会有其他的国家代码吗?有些国家/地区代码是1或4位数字,因此您可以有数字,如1-253-3478887或1-001-253-3478887。另外,为什么存储一个带前导零,而不存储另一个?换句话说,国家代码将如何格式化?它可以是任何我不知道如何检查和编写正则表达式的国家all@JW웃 - 更新了正则表达式。谢谢您的输入。@JW웃 - 更新了正则表达式。谢谢你的输入。真遗憾,一个英国电话号码都不匹配。@eggyal我的答案基于给出的示例,电话号码的组合太多了。我怎么知道这一切?也许OP需要在这个问题上更具体一些。遗憾的是,一个英国电话号码都不匹配。@eggyal我的答案是基于给出的例子,电话号码的组合太多了。我怎么知道这一切?也许OP需要对这个问题进行具体说明。