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

Вниз

Текстовый файл и delphi   Найти похожие ветки 

 
vit   (2003-08-15 12:50) [0]

Подскажите как решить проблему!
Требуеться произвести поиск в текстовом файле чисел в заданном диапозоне. Допустим необходимо найти число от 1000 до 3000 к примеру(1300) и вывести в поле memo1 расположенное на форме это число и следующие за ним (символы.слова.числа) до конца строки. Найти следущее число (1300)и следующие символы за ним до конца строки добавить в поле memo в следущюю строку и так пока небудет достигнут конец файла!


 
Anatoly Podgoretsky   (2003-08-15 12:59) [1]

Readlm + pos


 
still   (2003-08-15 13:00) [2]

Число может быть в любом месте строки? Должно ли оно чем-то отделяться от соседних символов (напр. пробелами)?


 
Андрей Сенченко   (2003-08-15 13:05) [3]

Алгоритм можно попытаться пошукать тут
http://algolist.manual.ru/search/index.php

Но в целом - по Подгорецкому
Readln + pos.


 
vit   (2003-08-15 13:06) [4]

Да число находиться в любом месте но не далее 80 символа в строке
От соседних символов должно отделяться как раз пробелами.


 
KPP   (2003-08-15 13:11) [5]

ничего лучше не придумаешь, как считывать посторочно или весь файл в пямять, а потом POS
// Readlm - хорошо звучит.. ;)


 
vit   (2003-08-15 13:19) [6]

сенкс!


 
Serginio212   (2003-08-15 13:24) [7]

Я бы для скорости посоветовал метод Боуера-Мур-Хорспул
http://algolist.manual.ru/search/esearch/horspool.php


 
KPP   (2003-08-15 13:55) [8]

> Serginio212 (15.08.03 13:24) [7]

какой прок от этого алгоритма в данном случае?


 
Serginio999   (2003-08-15 14:41) [9]

>KPP (15.08.03 13:55) [8]
А это в зависимости от того как ты организешь поиск.
Можно вести поиск через буффер, а можно прямо чтением в файле в зависимости от размера поисковой строки. Кроме всего прочего метод Боуера-Мур-Хорспул при определенных условиях во много раз быстрее Pos.



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

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

Наверх




Память: 0.46 MB
Время: 0.005 c
3-92061
Vmdeep2
2003-08-01 02:16
2003.08.28
LoadFromFile в ADO


3-92031
AbrosimovA
2003-08-04 16:15
2003.08.28
Как поменять имя существующего поля базы данных


3-91979
BoxTer
2003-08-01 09:16
2003.08.28
CommandTimeout в ADO


4-92307
artist
2003-06-25 16:35
2003.08.28
pressed всегда истина хотя на самом деле нет. Почему?


14-92250
Zhenka
2003-08-08 09:37
2003.08.28
Mассивы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский