Find Currency Symbol in Currency Data C#
c#
Solution
It sounds like you already know how to parse the string into a number type (correct me if I'm wrong). You're using `double` in your example, I would suggest `decimal` but that's your choice.
To get the currency symbol you can use a simple regular expression
Regex ex = new Regex(@"\p{Sc}");
CurrencySymbol = ex.Match(input).Value;
I hope that helps.
Problem
I want to find which Currency Symbol exists in Currency Format data. For example, Input String = $56.23 ``` public class FormatConverter { private CultureInfo _cultureInfo; public void UpdateCultureInfo() { Thread.CurrentThread.CurrentCulture.ClearCachedData(); var thread = new Thread( s => _cultureInfo = Thread.CurrentThread.CurrentCulture); thread.Start(); thread.Join(); } Bool TryParseCurrencySymbolAndValue(string input, out string CurrencySymbol, out double value) { if(_cultureInfo == null) UpdateCultureInfo(); try{ // Convert Currency data into double value = Double.Parse(input, NumberStyles.Number | NumberStyles.AllowCurrencySymbol); // How to extract Currency Symbol? CurrencySymbol = "$"; return true; } catch(Exception ex){ /* Exception Handling */} return false; } } ``` I want to extract "$" symbol from a string and 56.23 separately and then I want to apply CultureInfo to 56.23 into French Format. The output should be $56,23. In some cases, input might be "Euro sign" or some other currency symbol in the beginning or in the end of input string. I know how to convert into CurrentCulture for Numeric part. I don't know how to extract currency Symbol from a string.