This commit is contained in:
Marian Krivos 2012-04-29 11:24:44 +00:00
parent 0ad8b3c924
commit c33bf13bdc
3 changed files with 24 additions and 82 deletions

View File

@ -78,6 +78,12 @@ StringTokenizer::StringTokenizer(const std::string& str, const std::string& sepa
} }
} }
StringTokenizer::~StringTokenizer()
{
}
std::size_t StringTokenizer::count(const std::string& token) const std::size_t StringTokenizer::count(const std::string& token) const
{ {
std::size_t result = 0; std::size_t result = 0;
@ -120,65 +126,6 @@ std::size_t StringTokenizer::replace(const std::string& oldToken, const std::str
return result; return result;
} }
StringTokenizer::~StringTokenizer()
{
}
bool StringTokenizer::has(const std::string& token) const
{
Iterator it = begin();
Iterator stop = end();
for (; it != stop; ++it)
if (*it == token)
return true;
return false;
}
std::size_t StringTokenizer::find(const std::string& token, std::size_t pos) const
{
Iterator it = begin();
Iterator stop = end();
for (it += pos; it != stop; ++it)
if (*it == token)
return it - begin();
throw NotFoundException(token);
}
std::size_t StringTokenizer::replace(const std::string& oldToken, const std::string& newToken, std::size_t pos)
{
std::size_t count = 0;
TokenVec::iterator it = _tokens.begin();
TokenVec::iterator stop = _tokens.end();
for (it += pos; it != stop; ++it)
{
if (*it == oldToken)
{
*it = newToken;
++count;
}
}
return count;
}
std::size_t StringTokenizer::count(const std::string& token) const
{
std::size_t cnt = 0;
Iterator it = begin();
Iterator stop = end();
for (; it != stop; ++it)
if (*it == token)
++cnt;
return cnt;
}
} // namespace Poco } // namespace Poco

View File

@ -31,15 +31,12 @@
// DEALINGS IN THE SOFTWARE. // DEALINGS IN THE SOFTWARE.
// //
#ifndef StringTokenizerTest_INCLUDED #ifndef StringTokenizerTest_INCLUDED
#define StringTokenizerTest_INCLUDED #define StringTokenizerTest_INCLUDED
#include "Poco/Foundation.h" #include "Poco/Foundation.h"
#include "CppUnit/TestCase.h" #include "CppUnit/TestCase.h"
class StringTokenizerTest: public CppUnit::TestCase class StringTokenizerTest: public CppUnit::TestCase
{ {
public: public:
@ -48,7 +45,6 @@ public:
void testStringTokenizer(); void testStringTokenizer();
void testFind(); void testFind();
void testFind();
void setUp(); void setUp();
void tearDown(); void tearDown();
@ -58,5 +54,4 @@ public:
private: private:
}; };
#endif // StringTokenizerTest_INCLUDED #endif // StringTokenizerTest_INCLUDED