From 4e249fb3fbf75f0359758760d88e22aa5b14533c Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sat, 27 Nov 2010 01:02:21 +0200 Subject: Initial files --- src/strfnd.h | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 src/strfnd.h (limited to 'src/strfnd.h') diff --git a/src/strfnd.h b/src/strfnd.h new file mode 100644 index 000000000..dbbec11a6 --- /dev/null +++ b/src/strfnd.h @@ -0,0 +1,96 @@ +#ifndef STRFND_HEADER +#define STRFND_HEADER + +#include + +std::string trim(std::string str); + +class Strfnd{ + std::string tek; + unsigned int p; +public: + void start(std::string niinq){ + tek = niinq; + p=0; + } + unsigned int where(){ + return p; + } + void to(unsigned int i){ + p = i; + } + std::string what(){ + return tek; + } + std::string next(std::string plop){ + //std::cout<<"tek=\""<=tek.size()"<=tek.size()) return true; + return false; + } + Strfnd(std::string s){ + start(s); + } +}; + +inline std::string trim(std::string str) +{ + while( + str.length()>0 + && + ( + str.substr(0, 1)==" " || + str.substr(0, 1)=="\t" || + str.substr(0, 1)=="\r" || + str.substr(0, 1)=="\n" || + str.substr(str.length()-1, 1)==" " || + str.substr(str.length()-1, 1)=="\t" || + str.substr(str.length()-1, 1)=="\r" || + str.substr(str.length()-1, 1)=="\n" + ) + ) + { + if (str.substr(0, 1)==" ") + str = str.substr(1,str.length()-1); + else if (str.substr(0, 1)=="\t") + str = str.substr(1,str.length()-1); + else if (str.substr(0, 1)=="\r") + str = str.substr(1,str.length()-1); + else if (str.substr(0, 1)=="\n") + str = str.substr(1,str.length()-1); + else if (str.substr(str.length()-1, 1)==" ") + str = str.substr(0,str.length()-1); + else if (str.substr(str.length()-1, 1)=="\t") + str = str.substr(0,str.length()-1); + else if (str.substr(str.length()-1, 1)=="\r") + str = str.substr(0,str.length()-1); + else if (str.substr(str.length()-1, 1)=="\n") + str = str.substr(0,str.length()-1); + } + return str; +} + +#endif + -- cgit v1.2.3