From 9cd3ccffd5372dfde3af478e3f832f18db4be3f1 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 6 Apr 2013 13:14:41 +0200 Subject: tagging tags --- yhttpd-0.7.0/src/tool/tool.cpp | 129 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 yhttpd-0.7.0/src/tool/tool.cpp (limited to 'yhttpd-0.7.0/src/tool/tool.cpp') diff --git a/yhttpd-0.7.0/src/tool/tool.cpp b/yhttpd-0.7.0/src/tool/tool.cpp new file mode 100644 index 0000000..1da4a12 --- /dev/null +++ b/yhttpd-0.7.0/src/tool/tool.cpp @@ -0,0 +1,129 @@ +#ifndef TOOL_CPP +#define TOOL_CPP + +#include +#include +#include +#include +#include +#include +#include + +#include "tool.h" + +string +tool::trim( string s_str ) +{ + if(s_str.empty()) + return ""; + + char c_cur = s_str[0]; + auto int pos=0; + + // left trim + while (c_cur==' '|| c_cur == '\n' || c_cur == '\r') + { + s_str.erase(pos,1); + c_cur = s_str[++pos]; + } + + // right trim + pos=s_str.size(); + c_cur = s_str[s_str.size()]; + + while (c_cur==' ' || c_cur == '\n' || c_cur == '\0' || c_cur == '\r') + { + s_str.erase(pos,1); + c_cur = s_str[--pos]; + } + + return s_str; +} + +char* +tool::clean_char( char* c_str ) +{ + // Ralf: + char *c_pos; + for (c_pos = c_str; *c_pos != '\0'; ++c_pos) + if ( iscntrl(*c_pos) ) *c_pos = ' '; + return c_str; +} + +string +tool::replace( string s_string, string s_search, string s_replace ) +{ + unsigned int i_pos[2]; + + for ( i_pos[0] = s_string.find( s_search ); + i_pos[0] != string::npos; + i_pos[0] = s_string.find( s_search, i_pos[1] ) ) + { + s_string.replace( i_pos[0], s_search.length(), s_replace ); + i_pos[1] = i_pos[0] + s_replace.length(); + } + + return s_string; +} + +string +tool::get_extension( string s_file ) +{ + int pos = s_file.find_last_of("."); + if(pos != string::npos) + { + string s_ext=s_file.substr(pos+1, s_file.size()-(pos+1)); + for(int i = 0;i