diff --git a/src/CalcViewModel/UnitConverterViewModel.cpp b/src/CalcViewModel/UnitConverterViewModel.cpp index 46553012..a3e36628 100644 --- a/src/CalcViewModel/UnitConverterViewModel.cpp +++ b/src/CalcViewModel/UnitConverterViewModel.cpp @@ -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 regexTrimSpacesStart = wregex(L"^\\s+"); const wregex regexTrimSpacesEnd = wregex(L"\\s+$"); namespace CalculatorApp::ViewModel @@ -350,9 +351,13 @@ String^ UnitConverterViewModel::ConvertToLocalizedString(const std::wstring& str { currencyResult.erase(pos, currencyCode.length()); std::wsmatch sm; + if (regex_search(currencyResult, sm, regexTrimSpacesStart)) + { + currencyResult.erase(sm.prefix().length(), sm.length()); + } + if (regex_search(currencyResult, sm, regexTrimSpacesEnd)) { - currencyResult.erase(pos, 1); currencyResult.erase(sm.prefix().length(), sm.length()); } }