Задача 6 Урок 16

Задача 6 Урок 16:

Пользователь вводит строку произвольных символов, выделите из неё массив первых 8 строковых литералов, которые являются числами. И выведите эти числа на экран.
Например, из строки:

rew2@#$$#435tr353453t4er4

должны быть выделены подстроки:

2
435
353453
4
4

Подсказка: массив должен быть "of string".

Примечание: если никак не получается решить самостоятельно, посмотрите этот разбор решения(link is external).

var n, s: string;
    i, j: integer;
    a: array [1..8] of string;
begin
    write('Введите произвольную строку: ');
    readln(s);
    for i := 1 to length(s) do
     if (s[i] >= '0') and (s[i] <= '9') then
      begin
       n += s[i];
       if not ((s[i + 1] >= '0') and (s[i + 1] <= '9')) and (n <> '') then
        begin
         j += 1;
         a[j] := n;
         n := '';
         if j = 8 then break;
        end;
      end;
    for i := 1 to j do writeln(a[i]);
    readln();
end.