diff options
Diffstat (limited to 'lib/base/estring.cpp')
| -rw-r--r-- | lib/base/estring.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/base/estring.cpp b/lib/base/estring.cpp index 5d15ddce..dcba7705 100644 --- a/lib/base/estring.cpp +++ b/lib/base/estring.cpp @@ -1,6 +1,7 @@ +#include <algorithm> +#include <cctype> +#include <climits> #include <string> -#include <ctype.h> -#include <limits.h> #include <lib/base/eerror.h> #include <lib/base/encoding.h> #include <lib/base/estring.h> @@ -633,3 +634,12 @@ void makeUpper(std::string &s) { std::transform(s.begin(), s.end(), s.begin(), (int(*)(int)) toupper); } + +std::string replace_all(const std::string &in, const std::string &entity, const std::string &symbol) +{ + std::string out = in; + std::string::size_type loc = 0; + while (( loc = out.find(entity, loc)) != std::string::npos ) + out.replace(loc, entity.length(), symbol); + return out; +} |
