Я пытаюсь извлечь подстроку из строки, которая будет подстрока в 2 между разделителями т.е. она должна быть определена следующим образом:извлечь подстроку из строки в Smalltalk (писк)
substring: aString delimiter: aDelimiter
и, например, если я получу эту строку:
substring: 'dddd#sss#dddd' delimiter: '#'
Функция должна возвращать 'sss'.
это то, что я пытался, которые не работают:
substring: aString delimiter: aDelimiter
|index temp1 temp2 sz arr str|
arr := aString asArray.
sz := arr size.
index := arr lastIndexOf: aDelimiter.
temp1 := arr first: (sz - index +1).
index := temp1 lastIndexOf: aDelimiter.
sz :=temp1 size.
temp2 := temp1 first: (sz - index).
str := temp2 asString.
^str.
Я не знаю, стоит ли это упоминать, но он должен быть метод класса.
Что делает ваш код? Почему это не работает? –