From 326b2d07b780ef0dcd3091b42eb73c6554982f8c Mon Sep 17 00:00:00 2001 From: peavey Date: Wed, 18 Apr 2007 20:57:25 +0000 Subject: Add trim() to hashcomp to trail leading and traling spaces from std::strings git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6809 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/hashcomp.h | 1 + src/hashcomp.cpp | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/hashcomp.h b/include/hashcomp.h index 67a41a968..b903f7748 100644 --- a/include/hashcomp.h +++ b/include/hashcomp.h @@ -535,6 +535,7 @@ bool operator== (const irc::string& leftval, const std::string& rightval); std::string assign(const irc::string &other); irc::string assign(const std::string &other); +std::string& trim(std::string &str); namespace nspace { diff --git a/src/hashcomp.cpp b/src/hashcomp.cpp index 1e6db3f65..8212dcaa3 100644 --- a/src/hashcomp.cpp +++ b/src/hashcomp.cpp @@ -624,3 +624,14 @@ irc::string assign(const std::string &other) return other.c_str(); } +std::string& trim(std::string &str) +{ + std::string::size_type start = str.find_first_not_of(" "); + std::string::size_type end = str.find_last_not_of(" "); + if (start == std::string::npos || end == std::string::npos) + str = ""; + else + str = str.substr(start, end-start+1); + + return str; +} -- cgit v1.2.3