Описание функции
SplitA2
Разделяет строку и создаёт список из элементов.
SplitA2(String$, Array StringList.s(1)[, Separator$ = #CRLF$ + #TAB$ + #FF$ + #VT$ + " "])
Параметры
String$ | Строка, которую необходимо разделить |
StringList.s(1) |
Заранее созданный массив, являющийся результатом работы функции. |
Separator.s |
Символ являющийся разделителем. Если это строка более одного символа, то каждый символ будет как разделитель. |
Возвращаемое значение
ничего |
Пример
; AZJIO
; https://www.purebasic.fr/english/viewtopic.php?p=585485#p585485
Procedure SplitA2(String$, Array StringList.s(1), Separator$ = #CRLF$ + #TAB$ + #FF$ + #VT$ + " ")
Protected *S.Integer = @String$
Protected *jc.Character, *c.Character = @String$
Protected i
i = 0
While *c\c
*jc = @Separator$
While *jc\c
If *c\c = *jc\c
*c\c = 0
If *S <> *c
ReDim StringList(i)
StringList(i) = PeekS(*S)
i + 1
EndIf
*S = *c + SizeOf(Character)
Break
EndIf
*jc + SizeOf(Character)
Wend
*c + SizeOf(Character)
Wend
ReDim StringList(i)
StringList(i) = PeekS(*S)
EndProcedure
Define i, St.s = "Это тестовая строка, чтобы проверить, " + #CRLF$ + "работают ли разделение."
Define Dim WordsList.s(0)
SplitA2(St, WordsList())
For i = 0 To ArraySize(WordsList())
Debug WordsList(i)
Next