My understanding is that TString::Tokenize(…) automatically treats multi-character argument as consecutive single-character tokens, for instance:
TString s("a_b.c")
s.Tokenize("_")->At(0)->GetName() // prints "a"
s.Tokenize("_.")->At(2)->GetName() // prints "c", since now both "_" and "." are tokens
However, what if I need a token itself to be a multi-character expression? Using the above example, I would like to have for instance “_b” as a compound token, and get the following result:
TString s("a_b.c")
s.Tokenize("_b")->At(0)->GetName() // prints "a"
s.Tokenize("_b")->At(1)->GetName() // prints ".c"
What is the best strategy to handle compound tokens in ROOT in this sort of problem?