2017-04-03 28 views
0

携帯電話番号から国コードを削除します。この方法は、世界のどの国でも満足しなければならない。私は "+"、 " - "のような携帯電話番号から特殊文字を削除しようとしましたが、携帯電話番号から任意の国コードを削除することはできません。 携帯電話番号の特殊文字を削除するコードです。携帯電話番号から国コードを削除するにはどうすればよいですか?

public string RemoveCountryCode() 
{ 
    string phoneNumber = "441632960960"; 
    phoneNumber = Regex.Replace(phoneNumber, @"[^\d]", ""); 
    return phoneNumber ; 
} 

は、ここでの主な問題は、携帯電話番号の桁数は国によって異なっていると私は、トピックについての研究が、それらの多くは静的な方法を書きました。ここにリンクがありますBest practice for parsing and validating mobile number

+3

あなたが実際に国コードと携帯電話番号を持つべきであるが異なるこの問題 – Rahul

+2

を避けるために、分離-2国が異なる-2モバイル長さを持っており、彼らは国コードで同じ始まる文字を有することができるので、あなたはどのインデックスから知っていることはありませんモバイル開始または国コードが終了しました。だから最終的には、あなたは国のコードを持っていない限り、それを行うことができません固定携帯電話の長さ –

+1

あなたは入力文字列からこれを行うことはできません2とカウントダウンが3桁の前により多くの文字と連動する)。すでに述べたように、最初から2つの入力フィールドを別々に分離する必要があります。 – HimBromBeere

答えて

0

あなたはこれを達成するために国を知る必要があります。私の答えを見つけてください。あなたが国のリストを持っているなら、あなたに役立ちます。問題がある場合はお知らせください。

public string RemoveCountryCode() 
    { 
     string phonenumber = "+91123123123"; 

     List<string> countries_list = new List<string>(); 
     countries_list.Add("+1"); 
     countries_list.Add("+91"); 

     foreach(var country in countries_list) 
     { 
      phonenumber = phonenumber.Replace(country, ""); 

     } 

     return phonenumber; 
    } 
+0

ありがとうmeena!それは素晴らしい仕事です。 – prasanthi

+0

@prasanthiようこそ – Meena

関連する問題