2011-08-13 134 views
0

我正在將我的電話號碼作爲數字串存儲在數據庫中;例如4081234567.我正在尋找以美國電話格式XXX-XXX-XXXX格式化這串數字。這是我有,它不工作:用linq格式化電話號碼

ThePhone = "4081234567"; 
char[] ThePhoneString = ThePhone.ToArray(); 
var ThePhoneFormat = ThePhoneString.Take(3).ToList().ToString() + "-" +ThePhoneString.Skip(3).Take(3).ToString + "-" + ThePhoneString.Skip(6).Take(4).ToString(); 

我相信有更好的方式來做到這一點;你有什麼建議?

謝謝..

回答

4

問你不需要LINQ這一點。這種操作不是LINQ所用的。

請使用正則表達式或其他方法。

var phoneNumber = "4081234567"; 
var phoneFormat = Regex.Replace(phoneNumber, @"(\d{3})(\d{3})(\d{4})", "$1-$2-$3");