ROOT logo
ROOT » CORE » BASE » TStringToken

class TStringToken: public TString


 Provides iteration through tokens of a given string:

 - fFullStr     stores the string to be split. It is never modified.
 - fSplitRe     is the perl-re that is used to separete the tokens.
 - fReturnVoid  if true, empty strings will be returned.

 Current token is stored in the TString base-class.
 During construction no match is done, use NextToken() to get the first
 and all subsequent tokens.

Function Members (Methods)

public:
TStringToken(const TStringToken&)
TStringToken(const TString& fullStr, const TString& splitRe, Bool_t retVoid = kFALSE)
virtual~TStringToken()
TString&TString::Append(const char* cs)
TString&TString::Append(const TString& s)
TString&TString::Append(const char* cs, Ssiz_t n)
TString&TString::Append(const TString& s, Ssiz_t n)
TString&TString::Append(char c, Ssiz_t rep = 1)
Bool_tAtEnd() const
Double_tTString::Atof() const
Int_tTString::Atoi() const
Long64_tTString::Atoll() const
Bool_tTString::BeginsWith(const char* s, TString::ECaseCompare cmp = kExact) const
Bool_tTString::BeginsWith(const TString& pat, TString::ECaseCompare cmp = kExact) const
Ssiz_tTString::Capacity() const
Ssiz_tTString::Capacity(Ssiz_t n)
TString&TString::Chop()
static TClass*Class()
voidTString::Clear()
intTString::CompareTo(const char* cs, TString::ECaseCompare cmp = kExact) const
intTString::CompareTo(const TString& st, TString::ECaseCompare cmp = kExact) const
Bool_tTString::Contains(const TRegexp& pat) const
Bool_tTString::Contains(TPRegexp& pat) const
Bool_tTString::Contains(const char* s, TString::ECaseCompare cmp = kExact) const
Bool_tTString::Contains(const TString& pat, TString::ECaseCompare cmp = kExact) const
TStringTString::Copy() const
Int_tTString::CountChar(Int_t c) const
const char*TString::Data() const
Bool_tTString::EndsWith(const char* pat, TString::ECaseCompare cmp = kExact) const
virtual voidTString::FillBuffer(char*& buffer)
Ssiz_tTString::First(char c) const
Ssiz_tTString::First(const char* cs) const
voidTString::Form(const char* fmt)
static TStringTString::Format(const char* fmt)
static Ssiz_tTString::GetInitialCapacity()
static Ssiz_tTString::GetMaxWaste()
static Ssiz_tTString::GetResizeIncrement()
Bool_tTString::Gets(FILE* fp, Bool_t chop = kTRUE)
UInt_tTString::Hash(TString::ECaseCompare cmp = kExact) const
static UInt_tTString::Hash(const void* txt, Int_t ntxt)
Ssiz_tTString::Index(const TRegexp& pat, Ssiz_t i = 0) const
Ssiz_tTString::Index(TPRegexp& pat, Ssiz_t i = 0) const
Ssiz_tTString::Index(const char* s, Ssiz_t i = 0, TString::ECaseCompare cmp = kExact) const
Ssiz_tTString::Index(const TString& s, Ssiz_t i = 0, TString::ECaseCompare cmp = kExact) const
Ssiz_tTString::Index(const TRegexp& pat, Ssiz_t* ext, Ssiz_t i = 0) const
Ssiz_tTString::Index(TPRegexp& pat, Ssiz_t* ext, Ssiz_t i = 0) const
Ssiz_tTString::Index(const char* pat, Ssiz_t patlen, Ssiz_t i, TString::ECaseCompare cmp) const
Ssiz_tTString::Index(const TString& pat, Ssiz_t patlen, Ssiz_t i, TString::ECaseCompare cmp) const
static Ssiz_tTString::InitialCapacity(Ssiz_t ic = 15)
TString&TString::Insert(Ssiz_t pos, const char* cs)
TString&TString::Insert(Ssiz_t pos, const TString& s)
TString&TString::Insert(Ssiz_t pos, const char* cs, Ssiz_t n)
TString&TString::Insert(Ssiz_t pos, const TString& s, Ssiz_t n)
virtual TClass*IsA() const
Bool_tTString::IsAlnum() const
Bool_tTString::IsAlpha() const
Bool_tTString::IsAscii() const
Bool_tTString::IsDigit() const
Bool_tTString::IsFloat() const
Bool_tTString::IsHex() const
Bool_tTString::IsNull() const
Bool_tTString::IsWhitespace() const
Ssiz_tTString::Last(char c) const
Ssiz_tTString::Length() const
static Ssiz_tTString::MaxWaste(Ssiz_t mw = 15)
Bool_tTString::MaybeRegexp() const
Bool_tTString::MaybeWildcard() const
Bool_tNextToken()
const char*TString::operator const char*() const
char&TString::operator()(Ssiz_t i)
charTString::operator()(Ssiz_t i) const
TSubStringTString::operator()(const TRegexp& re) const
TSubStringTString::operator()(TPRegexp& re) const
TSubStringTString::operator()(Ssiz_t start, Ssiz_t len) const
TSubStringTString::operator()(const TRegexp& re, Ssiz_t start) const
TSubStringTString::operator()(TPRegexp& re, Ssiz_t start) const
TString&TString::operator+=(const char* cs)
TString&TString::operator+=(const TString& s)
TString&TString::operator+=(char c)
TString&TString::operator+=(Short_t i)
TString&TString::operator+=(UShort_t i)
TString&TString::operator+=(Int_t i)
TString&TString::operator+=(UInt_t i)
TString&TString::operator+=(Long_t i)
TString&TString::operator+=(ULong_t i)
TString&TString::operator+=(Float_t f)
TString&TString::operator+=(Double_t f)
TString&TString::operator+=(Long64_t l)
TString&TString::operator+=(ULong64_t ul)
TString&TString::operator=(char s)
TString&TString::operator=(const char* s)
TString&TString::operator=(const TString& s)
TString&TString::operator=(const string& s)
TString&TString::operator=(const TSubString& s)
char&TString::operator[](Ssiz_t i)
charTString::operator[](Ssiz_t i) const
TString&TString::Prepend(const char* cs)
TString&TString::Prepend(const TString& s)
TString&TString::Prepend(const char* cs, Ssiz_t n)
TString&TString::Prepend(const TString& s, Ssiz_t n)
TString&TString::Prepend(char c, Ssiz_t rep = 1)
voidTString::Puts(FILE* fp)
virtual voidTString::ReadBuffer(char*& buffer)
istream&TString::ReadFile(istream& str)
istream&TString::ReadLine(istream& str, Bool_t skipWhite = kTRUE)
istream&TString::ReadString(istream& str)
static TString*TString::ReadString(TBuffer& b, const TClass* clReq)
istream&TString::ReadToDelim(istream& str, char delim = '\n')
istream&TString::ReadToken(istream& str)
TString&TString::Remove(Ssiz_t pos)
TString&TString::Remove(Ssiz_t pos, Ssiz_t n)
TString&TString::Remove(TString::EStripType s, char c)
TString&TString::Replace(Ssiz_t pos, Ssiz_t n, const char* cs)
TString&TString::Replace(Ssiz_t pos, Ssiz_t n, const TString& s)
TString&TString::Replace(Ssiz_t pos, Ssiz_t n, const char* s, Ssiz_t ns)
TString&TString::Replace(Ssiz_t pos, Ssiz_t n1, const TString& s, Ssiz_t n2)
TString&TString::ReplaceAll(const TString& s1, const TString& s2)
TString&TString::ReplaceAll(const TString& s1, const char* s2)
TString&TString::ReplaceAll(const char* s1, const TString& s2)
TString&TString::ReplaceAll(const char* s1, const char* s2)
TString&TString::ReplaceAll(const char* s1, Ssiz_t ls1, const char* s2, Ssiz_t ls2)
voidTString::Resize(Ssiz_t n)
static Ssiz_tTString::ResizeIncrement(Ssiz_t ri = 16)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTString::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
TSubStringTString::Strip(TString::EStripType s = kTrailing, char c = ' ') const
TSubStringTString::SubString(const char* pat, Ssiz_t start = 0, TString::ECaseCompare cmp = kExact) const
TObjArray*TString::Tokenize(const TString& delim) const
Bool_tTString::Tokenize(TString& tok, Ssiz_t& from, const char* delim = " ") const
voidTString::ToLower()
voidTString::ToUpper()
static voidTString::WriteString(TBuffer& b, const TString* a)

Data Members

public:
enum TString::EStripType { kLeading
kTrailing
kBoth
};
enum TString::ECaseCompare { kExact
kIgnoreCase
};
protected:
char*TString::fDataref. counted data (TStringRef is in front)
const TStringfFullStr
Int_tfPos
Bool_tfReturnVoid
TPRegexpfSplitRe

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TStringToken(const TString& fullStr, const TString& splitRe, Bool_t retVoid = kFALSE)
 Constructor.
Bool_t NextToken()
 Get the next token, it is stored in this TString.
 Returns true if new token is available, false otherwise.
TStringToken(const TString& fullStr, const TString& splitRe, Bool_t retVoid = kFALSE)
virtual ~TStringToken()
{}
Bool_t AtEnd() const
{ return fPos >= fFullStr.Length(); }