Исходное:
строка = 'abc1 abc2 abc3'
номер_слова = 3 (номер слова, которое нам надо выделить из строки)
z = 0
Как искать пробел?
в инжекте строки это массив символов, по этому кним можно обращаться как к масиву.
строках[0] = 'a' строка[1] = 'b'
Следовательно достаточно обращатся к элементам массива, что бы найти пробел.
дальше найдя пробел надо обновить указатели на чалиа и конца слова. сна хождением нового пробела конец предшествующего слова становится на чалом следующего, по этому и происходит обмен у казателей (следует только соблюдать правельный порядок обмена).
Code:
sub GetWord(строка, номер_слова)
var текущая_позиция = 0, начало_слова = 0, конец_слова = 0
строка = строка + ' '
while номер_слова <> 0
if строка[текущая_позиция] == ' ' then
номер_слова = номер_слова - 1
начало_слова = конец_слова
конец_слова = текущая_позиция
end if
текущая_позиция = текущая_позиция + 1
wend
return Mid(строка, начало_слова, конец_слова - начало_слова)
end sub
z=val(GetWord('abc1 abc2 abc3', 3))