Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
ВнизКак из s: String удалить элемент Найти похожие ветки
← →
Tatyana (2004-02-27 16:37) [0]У меня есть список строк, некоторые из которых содержат одни пробелы. Как пустые строки они не удаляются. Никак не могу их победить.
← →
Алхимик (2004-02-27 16:42) [1]function Pos(Substr: string; S: string): Integer;
Выдает позицию подстроки Substr в строке S
procedure Delete(var S: string; Index, Count:Integer);
Удаляет из строки S количество Count начиная с Index
> Как пустые строки они не удаляются.
?
← →
Eagle-XK (2004-02-27 16:46) [2]Да это, батенька, БСК получается. Если нужно уделить строку, просто делается так: s := ""; . Если тебе нужно удалить ее из памяти, то тебе эту память нужно сначала выделить. А если тебе нужно удалить кусок строки, см. что написал Алхимик
← →
Юрий Зотов (2004-02-27 16:48) [3]if TrimLeft(S) = "" then <удалить S>
← →
Алхимик (2004-02-27 16:51) [4]
> [2] Eagle-XK © (27.02.04 16:46)
> Да это, батенька, БСК получается
Имхо "Матушка" :)
← →
Александр1 (2004-02-27 16:51) [5]Можно разбить текст на слова!
Ну короче поковыряё этот пример может чё наковыряешь!
function StringToWords(T:String;Mode:Short;List:Tstrings=nil):integer;
var
i,z:integer;
s:string;
c:Char;
procedure Check;
begin
if (s>"")and(List<>nil) then
begin
List.Add(S);
z:=z+1;
end;
s:="";
end;
begin
i:=0;
z:=0;
s:="";
if t>"" then
begin
while i<=Length(t)+1 do
begin
c:=t[i];
Case Mode of
0: {русские и английские слова}
if(c in ["a".."z"])or(c in ["A".."Z"])or(c in ["а".."я"])or
(c in ["А".."Я"]) and (c<>" ") then s:=s+c else Check;
1: {только русские слова}
if (c in ["а".."я"])or(c in ["А".."Я"]) and (c<>" ") then
s:=s+c else Check;
2: {только английские слова}
if(c in ["a".."z"])or(c in ["A".."Z"]) and (c<>" ") then
s:=s+c else check;
end;
i:=i+1;
end;
end;
result:=z;
end;
procedure TForm1.Button1Click(Sender: TObject);
var Source,Dest:Tstrings;
i:integer;
begin
Source:=TstringList.Create;
Dest:=TstringList.Create;
Source.LoadFromFile("c:\MyText.txt");
for i:=0 to Source.Count-1 do
begin
StringToWords(Source[i],2,Dest);
Application.ProcessMessages;
end;
Dest.SaveToFile("c:\MyWords.txt");
ShowMessage("Найдено "+IntToStr(Dest.Count)+" слов");
end;
← →
Юрий Зотов (2004-02-27 16:51) [6]> Алхимик © (27.02.04 16:42) [1]
> Eagle-XK © (27.02.04 16:46) [2]
В вопросе сказано: СПИСОК строк. Что же еще нужно?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c