00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef STRING_UTILS_H
00020 #define STRING_UTILS_H
00021
00022 #include <pandabase.h>
00023
00024 #include <string>
00025 #include <vector_string.h>
00026
00027
00028
00029 EXPCL_PANDA int cmp_nocase(const string &s, const string &s2);
00030
00031
00032 EXPCL_PANDA int cmp_nocase_uh(const string &s, const string &s2);
00033
00034
00035 EXPCL_PANDA string downcase(const string &s);
00036
00037
00038 EXPCL_PANDA string upcase(const string &s);
00039
00040
00041 EXPCL_PANDA int extract_words(const string &str, vector_string &words);
00042
00043
00044 EXPCL_PANDA void tokenize(const string &str, vector_string &words,
00045 const string &delimiters);
00046
00047
00048 EXPCL_PANDA string trim_left(const string &str);
00049 EXPCL_PANDA string trim_right(const string &str);
00050
00051
00052 EXPCL_PANDA int string_to_int(const string &str, string &tail);
00053 EXPCL_PANDA bool string_to_int(const string &str, int &result);
00054 EXPCL_PANDA double string_to_double(const string &str, string &tail);
00055 EXPCL_PANDA bool string_to_double(const string &str, double &result);
00056 EXPCL_PANDA bool string_to_float(const string &str, float &result);
00057
00058
00059
00060 template<class Thing>
00061 INLINE string format_string(const Thing &thing);
00062
00063 #include "string_utils.I"
00064
00065 #endif
00066