Вниз
Скачать: CL | DM;

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

← →
deras ©   (2007-05-31 23:17) [0]

Есть текстовый файл. Мне надо найти строку, которая содержит подстроку "[]" и в то же время "запомнить" предыдущую строку и следующую.


← →
default ©   (2007-05-31 23:26) [1]

ну очевидное решение это читать текстовый файл построчно, храня на каждом этапе считывания строки значение текущей строки и предыдущей
на каждом этапе проверяем на "[]" текущую строку и если есть читаем ещё следующую строку и выходим


← →
deras ©   (2007-05-31 23:32) [2]

>на каждом этапе проверяем на "[]" текущую строку и если есть читаем ещё следующую строку и выходим

уточняю вопрос. Если таких строк много и не надо выходить из цикла, а проверять далее?


← →
default ©   (2007-05-31 23:36) [3]

примерный псевдокод

предыдущая строка = пусто
текущая строка = пусто
флаг успешности поиска = ложь
пока (не конец файл)
  предыдущая строка = текущая строка
  текущая строка = СчитатьИзФайлаСледующуюСтроку(имя файла)
  если (текущая строка содержит "[]) тогда
    третья строка = пусто
    если (не конец файла) то третья строка =    
           СчитатьИзФайлаСледующуюСтроку(имя файла)
    флаг успешности поиска = истина
    выйти из цикла "пока"
  конец если
конец пока

если (флаг успешности = истина) тогда ....


← →
default ©   (2007-05-31 23:38) [4]

deras ©   (31.05.07 23:32) [2]
а файл большой, может в TStringList загрузить да и не париться?


← →
default ©   (2007-05-31 23:43) [5]

и если таких строк может быть много то же никаких проблем, чуть потправить псевдокод и делов


← →
deras ©   (2007-05-31 23:44) [6]

>а файл большой, может в TStringList загрузить да и не париться?

небольшой. Как реализовать загрузку в TStringList и упростит ли это алгоритм поиска?


← →
default ©   (2007-05-31 23:49) [7]

deras ©   (31.05.07 23:44) [6]
алгоритм упростится
в данной случае думаю стоит обойтись без TStringList(хотя опять же зависит от того что за задача у тебя какие требования и тд....)
а задачу можно поподробней?


← →
default ©   (2007-05-31 23:51) [8]

загрузка делается через TStringList.LoadFromFile



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
2-1180537474
[Salo] phantom
2007-05-30 19:04
2007.06.24
ООП


1-1177236415
Oleg_teacher
2007-04-22 14:06
2007.06.24
SpeedButton + Рисунок


2-1180031134
DemonP
2007-05-24 22:25
2007.06.24
отлов выхода из спящего режима


15-1180189731
Kostafey
2007-05-26 18:28
2007.06.24
Посоветуйте где найти простой фришный конвертор html в chm


2-1180858803
Вася
2007-06-03 12:20
2007.06.24
Объединить при проекта в один.




   Наверх