Определенно регулярное выражение:
string CleanPhone(string phone)
{
Regex digitsOnly = new Regex(@"[^\d]");
return digitsOnly.Replace(phone, "");
}
или внутри класса, чтобы избежать повторного создания регулярного выражения:
private static Regex digitsOnly = new Regex(@"[^\d]");
public static string CleanPhone(string phone)
{
return digitsOnly.Replace(phone, "");
}
В зависимости от ваших реальных входных данных, вам может потребоваться дополнительная логика для выполнения таких действий, как удаление первых 1 (для большого расстояния) или чего-либо, следующего за X или X (для расширений).