Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];

Вниз

Поиск в текстовом файле.   Найти похожие ветки 

 
Vasechkin   (2003-03-07 11:41) [0]

Помогите мне плиз.
Есть текстовый файл. Мне надо подсчитать в нем кол-во слова BLOCKED,
т.е. сколько раз оно там употребляется.
Приведите код, как это сделать.


 
gek   (2003-03-07 12:05) [1]

Спроси у Петрова о Readln


 
vasechkin   (2003-03-07 12:10) [2]

я НЕ ЗНАЮ ТАКОГО


 
gek   (2003-03-07 13:29) [3]

Напрасно,см свой ник >Vasechkin
ну а также
Readln,pos и все будет в порядке


 
Anatoly Podgoretsky   (2003-03-07 14:15) [4]

Ник смени :-)


 
Vasechkin   (2003-03-07 17:02) [5]

Ну помогите не могу разобраться


 
Intell   (2003-03-07 17:07) [6]

Удалено модератором
Примечание: Личная переписка


 
Vasechkin   (2003-03-07 17:21) [7]

Ну вам сложно что-ли. Для спецов это пять минут.


 
Intell   (2003-03-07 17:48) [8]

<Intell> - Я не спец, но подсказать кое что по этой теме могу:

Создай на форме кнопку и FindDialog (он находится на вкладке Dialogs в палитре компонентов).
На кнопку присвой:


procedure TForm1.Button1Click(Sender: TObject);
begin
finddialog1.Execute; // Та самая строка, для вызова окна поиска
end;

А на свойство OnFind компонента FindDialog, присвой:

procedure TForm1.FindDialog1Find(Sender: TObject);
begin
if pos(finddialog1.FindText, memo1.Text) <>0 then
begin
memo1.HideSelection:=false;
memo1.SelStart:=pos(finddialog1.FindText, memo1.Text)-1;
memo1.sellength:=length(finddialog1.findtext);
end else
messagedlg("Строка "+finddialog1.FindText+" не найдена!",mtinformation, [mbok],0);
end;

Итого получилось:


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
FindDialog1: TFindDialog;
Button1: TButton;
procedure FindDialog1Find(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FindDialog1Find(Sender: TObject);
begin
if pos(finddialog1.FindText, memo1.Text) <>0 then
begin
memo1.HideSelection:=false;
memo1.SelStart:=pos(finddialog1.FindText, memo1.Text)-1;
memo1.sellength:=length(finddialog1.findtext);
end else
messagedlg("Строка "+finddialog1.FindText+" не найдена!",mtinformation, [mbok],0);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
finddialog1.Execute;
end;

end.

Если для Rich то замени Memo на Rich
Надеюсь, что хоть как-то помог. С уважением Intell
sergein@nojabrsk.ru


 
Vovchik_A   (2003-03-07 18:16) [9]

1. Берешь текстовый файл

var
i : integer;
F : TextFile;
S: String;
begin
AssignFile(F,"D:\1111");
Reset(F);
While not EOF(F) Do Begin
Readln(f,s);
А вот здесь поищи функцией POS свой фрагмент
Label1.Caption:=S;
End;
end;


 
SeNtiMeL   (2003-03-07 18:52) [10]

Человек же просит алгоритм....
Я не спец, но все равно смотри:

var
counter : integer;
F : TextFile;
S,tmp: String;
begin

Counter:=0;
AssignFile(F,"D:\1111.txt");
Reset(F);
While not EOF(F) Do Begin
Readln(f,s);

Repeat
i:=Pos("BLOCKED",s);
if i<>0 then
Begin
Delete(s,1,I+Length("BLOCKED")-1);
inc(Counter);
End;
Until i=0;
End;
end;



После просмотра всего файла, выдаст тебе кол-во совпадений


 
SeNtiMeL   (2003-03-07 19:05) [11]

сории, ошибся в строке:
Delete(s,1,I+Length("BLOCKED")-1);
нужно:
Delete(s,i,Length("BLOCKED"));



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

Форум: "Основная";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.012 c
6-64266
Vzlom
2003-02-01 12:38
2003.03.20
как добавить в IExplorer свою кнопку


14-64348
Roman Go
2003-03-05 09:48
2003.03.20
Кто нибудь встречал компонент


3-63959
galexis
2003-02-27 13:17
2003.03.20
Как создать базу данных в коде


3-64012
Сергей
2003-02-28 21:56
2003.03.20
Работа с ADO


8-64229
Юра
2002-12-03 11:43
2003.03.20
Копировать в битмап фильм, играемый MediaPlayer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский