【发布时间】:2016-06-30 20:13:19
【问题描述】:
我有一个电话号码:
public string PhoneNumber
{
get
{
return _phoneNumber;
}
set
{
Regex regexObj = new Regex(@"[^\d]");
_phoneNumber = regexObj.Replace(value, "");
_phoneNumber = Regex.Replace(_phoneNumber, @"(\d{3})(\d{3})(\d{4})", "($1) $2-$3");
}
}
private string _phoneNumber;
如何使public string Areacode 成为PhoneNumber 的子字符串,其中包含前3 位数字(区号)?顺便说一句,我正在使用mvc。提前感谢您的帮助。
【问题讨论】:
-
您是否保证始终以可解析的特定格式分配电话号码?电话号码可以有几十种不同的格式;这些总是美国的电话号码吗?你有一个样本数据集来运行一些测试吗?
-
您是在问如何将前三位分配给另一个字符串属性,当有十位数字时,或者当有十一位数字并且第一位数字是 1 时,第二到第四位数字?还是你想认真对待它?
-
电话号码的长度最多为 10 位(仅限美国号码)@Cory。就数据集而言,使用“1234567891”应该足以满足我的目的。
-
@julianc 好的,继续
-
只是公共字符串 Areacode{get{return _area}set{_area=_phonenumber.Substring(0,3)}} @EdPlunkett?抱歉,我对这一切都是新手。