ho un valore stringa 1233,8736 milioni in C# e devo convertirlo in 123-387-7300 in C#Format String come il numero di telefono in C#
C'è qualche funzione in-built che farlo in C#?
ho un valore stringa 1233,8736 milioni in C# e devo convertirlo in 123-387-7300 in C#Format String come il numero di telefono in C#
C'è qualche funzione in-built che farlo in C#?
Si potrebbe voler utilizzare regex per questo. L'espressione regolare per il Nord America il numero di telefono si presenta così
^(\(?[0-9]{3}\)?)?\-?[0-9]{3}\-?[0-9]{4}$
Credo che si può utilizzare Regex.Replace
metodo in C#.
utilizzando una stringa di formato sarebbe il metodo preferito di fare questo. entrambi più leggibili e computazionalmente più veloci. – cazlab
lanciare la vostra stringa in un lungo e utilizzare il formato "{0:### ### ####}"
;
string.Format("{0:(###) ###-####}", 1112223333);
string phone = "1233873600".Insert(6, "-").Insert(3, "-");
Penso che regex sia l'opzione migliore.
questo sito è grande per la ricerca pre ha fatto stringhe regex.
È possibile utilizzare un metodo semplice di supporto che prenderà la stringa, sterilizzare l'ingresso al fine di rimuovere gli spazi o caratteri speciali non desiderate essere utilizzato come separatore, e quindi utilizzare il metodo ToString incorporato. Se controlli per varie lunghezze, puoi anche assicurarti che il formato esca come meglio credi. Ad esempio:
public string FormatPhoneNumber(string phoneNumber)
{
string originalValue = phoneNumber;
phoneNumber= new System.Text.RegularExpressions.Regex(@"\D")
.Replace(phoneNumber, string.Empty);
value = value.TrimStart('1');
if (phoneNumber.Length == 7)
return Convert.ToInt64(value).ToString("###-####");
if (phoneNumber.Length == 9)
return Convert.ToInt64(originalValue).ToString("###-###-####");
if (phoneNumber.Length == 10)
return Convert.ToInt64(value).ToString("###-###-####");
if (phoneNumber.Length > 10)
return Convert.ToInt64(phoneNumber)
.ToString("###-###-#### " + new String('#', (phoneNumber.Length - 10)));
return phoneNumber;
}
no non c'è, ma è possibile scrivere facilmente il proprio. –
possibile duplicato di [Come formattare una stringa come un numero di telefono in C#] (http://stackoverflow.com/questions/188510/how-to-format-a-string-as-a-telephone-number-in- c) – stuartd