CurrencyConverter:

- remove extra space at the end of the value with some locales and numbers
- fix formatting issue
This commit is contained in:
Rudy Huyn 2019-03-09 17:13:24 -08:00
commit 2ee2583d3d

View file

@ -53,6 +53,7 @@ constexpr size_t SELECTED_TARGET_UNIT = 2;
// x millisecond delay before we consider conversion to be final
constexpr unsigned int CONVERSION_FINALIZED_DELAY_IN_MS = 1000;
const wregex regexTrimSpacesEnd = wregex(L"\\s+$");
namespace CalculatorApp::ViewModel
{
@ -348,10 +349,11 @@ String^ UnitConverterViewModel::ConvertToLocalizedString(const std::wstring& str
if (pos != wstring::npos)
{
currencyResult.erase(pos, currencyCode.length());
pos = currencyResult.find(L'\u00a0'); // non-breaking space
if (pos != wstring::npos)
std::wsmatch sm;
if (regex_search(currencyResult, sm, regexTrimSpacesEnd))
{
currencyResult.erase(pos, 1);
currencyResult.erase(sm.prefix().length(), sm.length());
}
}