![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Разбивка текста на строчки [D7, XP]
AlexanderMS © (2006-04-22 19:42:00)Дан текст, содержащий несколько #13. Как мне разбить его на строки, чтобы затем вывести в TMemo? Мой способ довольно долгий и нерациональный, да к тому же подводит. Помогите, пожалуйста!
AlexanderMS (2006-04-22 20:09:00) [1]То что нужно! Большое спасибо!
KilkennyCat (2006-04-22 19:58:00) [2]
> Нужен модуль?
StrUtils
function AnsiReplaceStr(const AText, AFromText, AToText: string): string;
antonn (2006-04-22 19:57:00) [3]Kilkennycat © (22.04.06 19:51) [3]
хи-хи-хи, вот это я пролетел...
:)
antonn (2006-04-22 19:56:00) [4]может так:
function Set132caretka(s:string):string;
var i_last,_itmp:integer; res:string;
begin
res:='';
i_last:=1;
while i_last<length(s) do begin
_itmp:=pos('#13',copy(s,i_last,length(s)));
if _itmp>0 then begin
res:=res+copy(s,i_last,_itmp-1)+#13#10;
i_last:=i_last+_itmp+2;
end else begin
res:=res+copy(s,i_last,length(s)-i_last+1);
i_last:=length(s);
end;
end;
result:=res;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Lines.Add(Set132caretka('sdfasdf#13sdfadf#1313'));
end;
AlexanderMS (2006-04-22 19:54:00) [5]Спасибо. Только:
Undeclared identifier: 'ansireplace'
Нужен модуль?
Kilkennycat (2006-04-22 19:51:00) [6]ansireplace(text, #13, #13#10);
AlexanderMS (2006-04-22 19:48:00) [7]
for n := 1 to length(CSF[Index].Value) do
if СSF[Index].Value[n] = #13
then Value.Lines.Add('')
else value.Lines[value.Lines.Count - 1] := value.Lines[value.Lines.Count - 1] + CSF[Index].Value[n];
antonn (2006-04-22 19:45:00) [8]а какой у вас способ?