StringTokenizerArray Class (console safe)
StringTokenizerArray is a high speed string parser which parses a string all at once, and marks location of found tokens.
The main difference between Xojo built in NthField, StringTokenizerList and StringTokenizerArray:
NthField:Good for short strings with few fields.
Parses the string each time you call it, which means if your string has 1000 fields then the string is parsed 1000 times.
Can random access fields.
Tokens can be previously counted (costing one additional round of parsing)
StringTokenizerList (fastest):
Good for long strings with many fields.
Parses the string once only.
Parsing is done in incremental steps, which means that it will not allocate any additional memory, and that if you have a string with 1000 fields and only want to get the first 3 then only the first part of the string is parsed.
Can not random access fields.
Tokens cannot be previously counted.
StringTokenizerArray (fast):
Good for long strings with many fields.
Parses the string once only.
Parsing is done all at once when the class is constructed. (some additional memory is allocated to store location marks)
Can random access fields.
Tokens can be previously counted (costing no additional round of parsing)
Object
StringTokenizerArray
Constructors
Properties
TokenCount (console safe) | Use this property to get the count of Tokens. |
Methods
GetNext (console safe) | Use to get next item from the StringTokenizerArray. |
HasNext (console safe) | Use to get info if there are more items in the StringTokenizerArray. |
MoveFirst (console safe) | Use to reset the iterator in the StringTokenizerArray. |
Operator_Subscript (console safe) | Implements operator to read from the array with the ( ) indexer operator. |
PeekNext (console safe) | Use this function to peek at next item from the StringTokenizerArray without causing iteration. |
TokenAt (console safe) | Use this method to get a token from the desired position in the StringTokenizerArray class. |
Supported Platforms:
MacOS X CarbonMacOS X Cocoa 32 bitMacOS X Cocoa 64 bitWindows 32 bitWindows 64 bitLinux 32 bitLinux 64 bitLinux ARM