In Poco 1.4.7p1, Poco::StringTokenizer tokens(" 2- ","-", Poco::StringTokenizer::TOK_TRIM); splits the string into two tokens, 2 and ``.
In Poco 1.6.1, the same constructor splits the string into only one token, 2.
Since Poco::StringTokenizer::TOK_TRIM is supposed to "remove leading and trailing whitespace from tokens" and says nothing about trimming the input string, I believe the empty token should be present.