splitTokens()

Data / String Functions

Description

Splits a string into substrings using any character in the delimiters string.

Syntax

std::vector<std::string> splitTokens(std::string s, std::string delims)

Parameters

NameTypeDescription
sstd::stringthe string to split
delimsstd::stringstring of delimiter characters

Returns

std::vector

Related

Under the Hood

From Processing.h:

inline std::vector<std::string> splitTokens(const std::string& s, const std::string& delims) { std::vector<std::string> o; std::string cur; for (char c:s) { if (delims.find(c)!=std::string::npos) { if(!cur.empty()){o.push_back(cur);cur.clear();} } else cur+=c; } if (!cur.empty()) o.push_back(cur); return o; } static std::vector<std::string> splitTokens(const std::string& s, const std::string& d);

Under the Hood

From Processing.cpp:

std::vector<std::string> PApplet::splitTokens(const std::string& s, const std::string& delims) { std::vector<std::string> r; std::string t; for (char c : s) { if (delims.find(c)!=std::string::npos){if(!t.empty()){r.push_back(t);t.clear();}}else t+=c; } if (!t.empty()) r.push_back(t); return r; }