Вниз
Скачать: CL | DM;

запись в файл   Найти похожие ветки 

← →
гость   (2004-12-07 17:16) [0]

Имеется строка вида 2*3+444*8+37*77+.......
вопрос.
Как найти в строке все * и числа стоящие перед * (2 444 37 и т.д.)записать в файл
1.txt через пробел.


← →
Александр Иванов ©   (2004-12-07 17:33) [1]

Примерно так:

try
String:=TStringList.Create;
index:=pos("*", Str);
while index<>0 do
 begin
   if index<>byte(Str[0]) then
      Str:=Copy(Str,index+1,byte(Str[0])-index);
   else Str:="";
   i:=index-1;
   buffer:="";
   Sub := Copy(Str,1,index-1);
   while (i <> 0) or (not Sub[i] in ["0".."9","."]) do
     begin
       buffer:=buffer+Sub[i];
       dec(i);
     end;
   Strings.Add(buffer);
   index:=pos("*", Str);
 end;
Strings.SaveToFile(FileName);
finally
 Strings.Free;
end;


← →
begin...end ©   (2004-12-07 19:31) [2]

> гость   (07.12.04 17:16)

uses StrUtils;
var
 S: String;
 I, J: Integer;
begin
 S := "2*3+444*8+37*77+";
 with TStringList.Create do
   try
     Delimiter := "*";
     DelimitedText := S;
     if Count > 0 then
       Delete(Count - 1);
     for I := 0 to Count - 1 do
       for J := Length(Strings[I]) downto 1 do
         if not (Strings[I][J] in ["0".."9"]) then
         begin
           Strings[I] := RightStr(Strings[I], Length(Strings[I]) - J);
           Break
         end;
     SaveToFile("c:\1.txt")
   finally
     Free
   end
end.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.036 c
9-1085669345
Micah'GF
2004-05-27 18:49
2004.12.19
DelphiX: А вы не верили!?!


1-1101913844
Суслик
2004-12-01 18:10
2004.12.19
Руссификация MessageDlg


1-1102143291
Лариса
2004-12-04 09:54
2004.12.19
Помоги спецы!!!


6-1097084387
Stas_on
2004-10-06 21:39
2004.12.19
Как узнать IP компа в сетке из 12+1 компов?


14-1101881980
BiN
2004-12-01 09:19
2004.12.19
1 декабря - всемирный день борьбы со СПИД-ом.




   Наверх