VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "Tokenizer"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
'Klasa podziału na tokeny
Private s As String, i As Integer
Private sep As String   'token separator

Public Sub init(ByVal st As String)
  s = st
End Sub

Private Sub Class_Initialize()
  sep = " "                       'Domyślny separator
End Sub

Public Sub setSeparator(ByVal sp As String)
  sep = sp
End Sub

Public Function nextToken() As String
  Dim tok$
  i = InStr(s, sep)               'Poszukaj wystąpienia separatora
  If i > 0 Then                   'jeśli istnieje
    tok$ = Left$(s, i - 1)        'zwróć podciąg po jego lewej stronie
    s = Trim$(Right$(s, Len(s) - i))   'Skróć ciąg wejściowy
  Else
    tok$ = s                      'W przeciwym razie zwróć resztę ciągu
    s = ""                        'A ciąg wejściowy uczyń pustym
  End If
  nextToken = tok$                'Zwróć token
End Function
