00001 #include "stringfunctions.h"
00002 #include "string.h"
00003
00004 ArrayString StringFunctions::tokenize(std::string str,std::string delimiters)
00005 {
00006 char newString[str.size()+1];
00007 strcpy(newString,str.c_str());
00008 ArrayString vec;
00009 char *p = strtok(newString,delimiters.c_str());
00010 while (p!=NULL)
00011 {
00012 vec.push_back(p);
00013 p = strtok(NULL,delimiters.c_str());
00014 }
00015 return vec;
00016 }
00017
00018
00019 string StringFunctions::get_file_name(std::string path)
00020 {
00021 size_t start=path.find_last_of('/');
00022 if (start== string::npos)
00023 start = 0;
00024 else
00025 start++;
00026 return path.substr(start);
00027 }
00028
00029
00030 string StringFunctions::get_prefix_file(std::string fileName)
00031 {
00032 size_t end=fileName.find_last_of('.');
00033 if (end == string::npos)
00034 end=fileName.size();
00035 return fileName.substr(0,end);
00036
00037 }
00038
00039
00040 string StringFunctions::to_string(int a)
00041 {
00042 char str[1000];
00043 sprintf(str,"%d",a);
00044 return str;
00045 }
00046
00047
00048 string StringFunctions::to_string(int a,int b)
00049 {
00050 char str[1000];
00051 sprintf(str,"%d %d",a,b);
00052 return str;
00053
00054
00055 }
00056
00057
00058 std::string StringFunctions::strip_from_end(std::string dataName,char delim)
00059 {
00060 size_t end=dataName.find_last_of(delim);
00061 if (end == string::npos)
00062 end = dataName.size();
00063 return dataName.substr(0,end);
00064 }
00065
00066 string StringFunctions::to_string(StringList list)
00067 {
00068 std::string resp;
00069 for (unsigned i=0;i<list.size();i++)
00070 resp+=list[i]+" ";
00071 return resp;
00072 }