diff options
Diffstat (limited to 'sca-cpp/trunk/kernel/string.hpp')
-rw-r--r-- | sca-cpp/trunk/kernel/string.hpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sca-cpp/trunk/kernel/string.hpp b/sca-cpp/trunk/kernel/string.hpp index 931417e430..1daec2aac7 100644 --- a/sca-cpp/trunk/kernel/string.hpp +++ b/sca-cpp/trunk/kernel/string.hpp @@ -241,6 +241,9 @@ const int find(const string& s1, const char* s2) { return find(s1, s2, 0); } +/** + * Return true if string s1 contains s2. + */ const bool contains(const string& s1, const char* s2) { return find(s1, s2) != length(s1); } @@ -253,6 +256,17 @@ const int find_first_of(const string& s1, const string& s2) { } /** + * Find the first occurence of a character in a string. + */ +const int find(const string& s, const char c) { + const char* cs = c_str(s); + const char* f = strchr(cs, c); + if (f == NULL) + return length(s); + return f - cs; +} + +/** * Find the last occurence of a character in a string. */ const int find_last(const string& s, const char c) { |