I used the code below to get the list of culture type, is there a way on how to get just the country name?
Thank you
static void Main(string[] args)
{
StringBuilder sb = new StringBuilder();
foreach (CultureInfo ci in CultureInfo.GetCultures(CultureTypes.SpecificCultures))
{
sb.Append(ci.DisplayName);
sb.AppendLine();
}
Console.WriteLine(sb.ToString());
Console.ReadLine();
}
Sample Output:
Spanish (Puerto Rico)
Spanish (United States)
Well, this regular expression seems to do the job in most cases:
var regex = new System.Text.RegularExpressions.Regex(@"([\w+\s*\.*]+\))");
foreach (var item in CultureInfo.GetCultures(CultureTypes.SpecificCultures))
{
var match = regex.Match(item.DisplayName);
string countryName = match.Value.Length == 0 ? "NA" : match.Value.Substring(0, match.Value.Length - 1);
Console.WriteLine(countryName);
}