aboutsummaryrefslogtreecommitdiffstats
path: root/taglib/toolkit/tstring.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'taglib/toolkit/tstring.cpp')
-rw-r--r--taglib/toolkit/tstring.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/taglib/toolkit/tstring.cpp b/taglib/toolkit/tstring.cpp
index 99a10b10..a9a1ee43 100644
--- a/taglib/toolkit/tstring.cpp
+++ b/taglib/toolkit/tstring.cpp
@@ -26,6 +26,7 @@
#include "tstring.h"
#include "unicode.h"
#include "tdebug.h"
+#include "tstringlist.h"
#include <ostream>
@@ -304,6 +305,26 @@ int String::rfind(const String &s, int offset) const
return -1;
}
+StringList String::split(const String &separator) const
+{
+ StringList list;
+ for(int index = 0;;)
+ {
+ int sep = find(separator, index);
+ if(sep < 0)
+ {
+ list.append(substr(index, size() - index));
+ break;
+ }
+ else
+ {
+ list.append(substr(index, sep - index));
+ index = sep + separator.size();
+ }
+ }
+ return list;
+}
+
bool String::startsWith(const String &s) const
{
if(s.length() > length())