static IEnumerable<CultureInfo> GetCultureInfosByCurrencySymbol(string currencySymbol) { if (currencySymbol == null) { throw new ArgumentNullException("currencySymbol"); } return CultureInfo.GetCultures(CultureTypes.SpecificCultures) .Where(x => new RegionInfo(x.LCID).ISOCurrencySymbol == currencySymbol); }
for example
foreach (var culture in GetCultureInfosByCurrencySymbol("GBP")) { Console.WriteLine(culture.Name); }
prints:
cy-GB gd-GB en-GB
Paolo moretti
source share