summaryrefslogtreecommitdiff
path: root/ZAPD/Utils/StringHelper.h
diff options
context:
space:
mode:
authorbriaguya <70942617+briaguya-ai@users.noreply.github.com>2024-05-03 01:41:56 -0400
committerGitHub <noreply@github.com>2024-05-03 01:41:56 -0400
commit97f3ea6a7be5953d3514b7ce347c61cbe9b36d98 (patch)
tree3579e9fc27dc625004fc2c507747e6725eb89e48 /ZAPD/Utils/StringHelper.h
parentca1e19946b781cb93032f11e6e5eacdd65bb888d (diff)
parent15b7b3c8a799c861993de122795fa4931a329727 (diff)
Merge pull request #23 from Archez/merge-soh-macready-to-master
Merge soh macready to master
Diffstat (limited to 'ZAPD/Utils/StringHelper.h')
-rw-r--r--ZAPD/Utils/StringHelper.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/ZAPD/Utils/StringHelper.h b/ZAPD/Utils/StringHelper.h
new file mode 100644
index 0000000..0fc58d3
--- /dev/null
+++ b/ZAPD/Utils/StringHelper.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include <algorithm>
+#include <cstdarg>
+#include <cstring>
+#include <numeric>
+#include <string>
+#include <string_view>
+#include <vector>
+#include <cstdint>
+
+class StringHelper
+{
+public:
+ static std::vector<std::string> Split(std::string s, const std::string& delimiter);
+ static std::vector<std::string_view> Split(std::string_view s, const std::string& delimiter);
+ static std::string Strip(std::string s, const std::string& delimiter);
+ static std::string Replace(std::string str, const std::string& from, const std::string& to);
+ static void ReplaceOriginal(std::string& str, const std::string& from, const std::string& to);
+ static bool StartsWith(const std::string& s, const std::string& input);
+ static bool Contains(const std::string& s, const std::string& input);
+ static bool EndsWith(const std::string& s, const std::string& input);
+ static std::string Sprintf(const char* format, ...);
+ static std::string Implode(std::vector<std::string>& elements, const char* const separator);
+ static int64_t StrToL(const std::string& str, int32_t base = 10);
+ static std::string BoolStr(bool b);
+ static bool HasOnlyDigits(const std::string& str);
+ static bool IsValidHex(std::string_view str);
+ static bool IsValidHex(const std::string& str);
+ static bool IsValidOffset(std::string_view str);
+ static bool IsValidOffset(const std::string& str);
+ static bool IEquals(const std::string& a, const std::string& b);
+}; \ No newline at end of file