Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.21;
Скачать: CL | DM;

Вниз

Подсчет слов совпадающих с данным в текстовом файле   Найти похожие ветки 

 
Sn   (2006-12-28 16:55) [0]

Нужно сделать в Delphi программу, которая должна работать следующим образом:
В поле Edit вводится строка,
затем через OpenDialog открывается текстовый файл,
на Label выводится сколько раз данное слово встречается в файле
нужен только алгоритм, со связкой компонентов проблем нет


 
Elen ©   (2006-12-28 16:58) [1]


> Sn

Загружай тест в ListBox и в цикле до конца ищи слово, увеличивая счетчик.


 
Sn   (2006-12-28 17:02) [2]

можно чуть подробнее... как искать какую функцию использовать?
а если текстовый файл полное собрание сочинений Пушкина например?
тоже загружать?


 
Anatoly Podgoretsky ©   (2006-12-28 17:05) [3]

> Sn  (28.12.2006 17:02:02)  [2]

Для собрания сочинений Пушкина используй базу данных, по одному слову в поле и запрос с Count и Group


 
umbra ©   (2006-12-28 17:09) [4]

загружаете текст в TStrings и в св-ве TStrings.Text ищете нужное сочетание с помощью ф-ции PosEx


 
Sha ©   (2006-12-28 17:40) [5]

Раньше не задумывался, Пушкин больше 2х гигов написал или меньше )


 
umbra ©   (2006-12-28 17:42) [6]

если без черновиков, набросков и комментариев, то точно меньше :)


 
umbra ©   (2006-12-28 17:45) [7]

но вот Льва Толстого я в этом смысле опасаюсь :)


 
Sha ©   (2006-12-28 18:01) [8]

И еще один вопрос остается, а стоило ли грузить в TStrings, а потом искать в Text?
Не проще ли было сразу в строку все зачитать?


 
umbra ©   (2006-12-28 18:20) [9]


> Не проще ли было сразу в строку все зачитать?
>

тогда пришлось бы сделать практически то же, что делается в TStrings.LoadFromFile. И, честно говоря, читая описание задачи, я не рассчитывал даже на Пушкина (о нем еще и речи не было), не говоря уже о Толстом.


 
Sn   (2006-12-28 20:14) [10]

Пушкин в txt 12 МБ.
нет, что-нибудь такое нужно в стиле C
т.е. Открыл файл
потом read()
закрыл файл
Наверняка же есть простое решение на Паскаль?
без всяких TString и загрузки файла в текстовые области или еще чего


 
default ©   (2006-12-28 21:05) [11]

что тебе мешает мыслить текстовый файл как одну строку?
и дальше применить какой-либо алгоритм поиска подстроки в строке
как правило эти алгоритмы требуют одного прямого прохода по строке
если файл большой тебе потребуется подгружать части строки по мере просмотра
можно поручить задачу динамической подгрузки частей строки ОС используя файлы отображаемые в память


 
Sha ©   (2006-12-29 00:32) [12]

> umbra ©   (28.12.06 18:20) [9]
> тогда пришлось бы сделать практически то же, что делается в TStrings.LoadFromFile.


Вовсе нет. Достаточно одной таблетки, т.е. одного BlockRead.
А в TStrings.LoadFromFile много лишнего для нас делается.


 
Sn   (2006-12-29 06:52) [13]

>загружаете текст в TStrings и в св-ве TStrings.Text ищете нужное >сочетание с помощью ф-ции PosEx
Просто возникла такая задача, а  Паскаль я вообще не знаю!
Я здесь писал как раз для того, чтобы не рыться в справочниках и хелпах!
И просил готовое решение.
Неужели нельзя привести 10 строк кода.
Это же элементарная задача.
Конечно на Perl или PHP можно через регексы легко разобрать.
На C тоже без проблем.
Это особенность людей пишуших на Паскале отвечать задачей на задачу???


 
Sn   (2006-12-29 06:58) [14]

Так и я могу написать, как мне ответили, типа
1. открываешь файл
2. ищешь совпадения
3. накручиваешь целочисленную перменную
4. закрываешь файл
5. выводишь количество совпадений


 
MikePetrichenko ©   (2006-12-29 07:11) [15]


> Я здесь писал как раз для того, чтобы не рыться в справочниках
> и хелпах!
> И просил готовое решение.

Готовое реение = $50WMZ


 
Sn   (2006-12-29 07:36) [16]

Удалено модератором
Примечание: Сам займись эти, на тренировки три дня


 
Sn   (2006-12-29 07:43) [17]

Конечно, надо быть взаимно вежливыми.
Первй раз деньги на форумах вымогают.
Я же не курсовую прошу написать, а 10 строк элементарного, для знающего паскаль, кода.
Я всегда знал, что нахрен Паскаль не нужен.
Сейчас в этом убедился на все 1000%.
Прощайте, господа!


 
Virgo_Style ©   (2006-12-29 08:01) [18]

ура


 
Elen ©   (2006-12-29 08:21) [19]


> все 1000%

Да уж... Неуважение к другим действительно зашкаливает на 1000%.
Кстати а как расшифровывается WMZ?


 
Sha ©   (2006-12-29 09:49) [20]

> Sn   (28.12.06 16:55)  
> нужен только алгоритм...

> Sn   (29.12.06 06:58) [14]
> Так и я могу написать, как мне ответили, типа
> 1. открываешь файл
> 2. ищешь совпадения
> 3. накручиваешь целочисленную перменную
> 4. закрываешь файл
> 5. выводишь количество совпадений


А что в твоем понимании алгоритм?

> Sn   (28.12.06 16:55)  
> нужен только алгоритм...

> Sn   (29.12.06 06:52) [13]
> Я здесь писал как раз для того, чтобы не рыться в справочниках и хелпах!
> И просил готовое решение.


Определись, че те надо, и сформулируй.

> Sn
Первй раз деньги на форумах вымогают.

Люли отвечают на понравившиеся им вопросы.
Ты принимаешь понравившиеся ответы.
Это ж так просто.

> Sn
Конечно, надо быть взаимно вежливыми.


Во-во, не хрен здесь хамить



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

Текущий архив: 2007.01.21;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.044 c
3-1162286414
RomanH
2006-10-31 12:20
2007.01.21
Транзакция на обновление записи


15-1167410718
Gero
2006-12-29 19:45
2007.01.21
Песни в хорошем качестве


2-1167371820
hero
2006-12-29 08:57
2007.01.21
Как имея ID процесса узнать имя файла и путь этого процесса?


15-1167323894
oldman
2006-12-28 19:38
2007.01.21
С Новым Годом...


2-1167821736
daser
2007-01-03 13:55
2007.01.21
Как удалить строку из текстового файла, содержащую...