speed up utils::is_double() by putting most likely matching regexps first

This commit is contained in:
Axel Kohlmeyer
2022-12-18 06:06:22 -05:00
parent 1cd7011b66
commit 15dfb090c9

View File

@ -1163,9 +1163,8 @@ bool utils::is_double(const std::string &str)
{
if (str.empty()) return false;
if (strmatch(str, "^[+-]?\\d+\\.?\\d*$") || strmatch(str, "^[+-]?\\d*\\.?\\d+$") ||
strmatch(str, "^[+-]?\\d+\\.?\\d*[eE][+-]?\\d+$") ||
strmatch(str, "^[+-]?\\d*\\.?\\d+[eE][+-]?\\d+$"))
if (strmatch(str, "^[+-]?\\d+\\.?\\d*$") || strmatch(str, "^[+-]?\\d+\\.?\\d*[eE][+-]?\\d+$") ||
strmatch(str, "^[+-]?\\d*\\.?\\d+$") || strmatch(str, "^[+-]?\\d*\\.?\\d+[eE][+-]?\\d+$"))
return true;
else
return false;