function OnlyDec(const s: String): string;
Var
ch: char;
i: integer;
begin
for i := 0 to s.Length do
if CharInSet(s[i], ['0'..'9']) then
result := result + s[i];
или
for i := low(s) to High(s) do
if CharInSet(s[i], ['0'..'9']) then
result := result + s[i];
или
for ch in s do
if ch in ['0'..'9'] then
result := result + ch;
или
for ch in s do
if CharInSet(ch, ['0'..'9']) then
result := result + ch;
end;
Почитал http://docwiki.embarcadero.com/RADStudio/Tokyo/en/String_Types_(Delphi) но до конца не понял.
Как всё-таки более правильно сделать цикл по строке?
Я склоняюсь к последнему варианту.