00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef ThePEG_StringUtils_H
00010 #define ThePEG_StringUtils_H
00011
00012
00013 #include "ThePEG/Config/ThePEG.h"
00014
00015 namespace ThePEG {
00016
00021 class StringUtils {
00022
00023 public:
00024
00028 typedef vector<string> StringVector;
00029
00035 static StringVector split(string s, string ws = " \t\n");
00036
00042 static string car(string s, string ws = " \t\n");
00043
00049 static string cdr(string s, string ws = " \t\n");
00050
00055 static string stripws(string str);
00056
00062 static string dirname(string file);
00063
00068 static string basename(string file);
00069
00073 static string remsuf(string file);
00074
00079 static string suffix(string file);
00080
00087 static map<string,string> xmlAttributes(string tag, string line,
00088 string::size_type curr = 0);
00089
00093 typedef string::size_type pos_t;
00094
00098 static const pos_t end = string::npos;
00099
00100
00101 };
00102
00103 }
00104
00105 #endif