Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Портал .::2BakSa.WS::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > Delphi

Уважаемые пользователи nowa.cc и 2baksa.ws. У нас сложилось тяжёлое финансовое положение. Мы работаем для вас вот уже более 15 лет и сейчас вынуждены просить о помощи. Окажите посильную поддержку проектам. Мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: 826074280762 Webmoney WME: 804621616710
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!
Ответ
 
Опции темы Опции просмотра Language
Старый 03.07.2009, 18:44   #1
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Обработка текстовых файлов

Подскажыте, как реализовать программу, которая будет вырезать из текстового файла кусок, начинающийся и заканчивающийся определенным текстом
bssergy вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Рекомендуем супермаркет KNS - 27mp400b - билеты на футбол в подарок каждому покупателюруки вверх 2024 концерты афишаКондиционер SYSPLIT WALL SMART 36 V3 HP Qкерамогранит slimРекомендуем гипермаркет КНС - телевизор Philips 43PUS8108-60 - более 50-ти тысяч наименований товаров со склада в Москве


Старый 03.07.2009, 19:32   #2
LuceferAB
Пользователь
 
Пол:Мужской
Регистрация: 11.03.2008
Сообщений: 158
Репутация: 33
По умолчанию Re: Обработка текстовых файлов

ищи текст с начала файла - запоминай позицию 1, потом такой же текст с конца файла - запоминай позицию 2. Затем копируй все подряд с позиции 1 до позиции 2 (если позиция 2 существует)
Посмотри модуль StrUtils
LuceferAB вне форума
 
Ответить с цитированием Вверх
Старый 03.07.2009, 22:19   #3
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

Ну, во первых, нужно как раз вырезать из файла кусок, во вторых, не совсем то я и знаком с делфи, по этому подскажыте, как лучше открыть текстовый файл, для того, чтобы с ним потом удобно было работать таким образом. Скажем, еще такая проблема, что тот кусок, который нужно вырезать, нужно опознать не по одному слову, а по нескольким строкам, по этому не знаю, как все это толково организировать
bssergy вне форума
 
Ответить с цитированием Вверх
Старый 04.07.2009, 12:32   #4
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

Вобщем вопрос вот в чем: как сравнить строки я знаю, то если их несколько? Наведу конкретный пример. Из файла с таким содержымым:

Это файл, в котором
содержаться ненужные строки
и их нужно вырезать и
сохранить файл

нужно допустим вирезать следующий текст:

ненужные строки
и их нужно вырезать
bssergy вне форума
 
Ответить с цитированием Вверх
Старый 04.07.2009, 15:04   #5
ultimate
Пользователь
 
Аватар для ultimate
 
Пол:Мужской
Регистрация: 31.01.2007
Сообщений: 118
Репутация: 65
По умолчанию Re: Обработка текстовых файлов

как вариант помещаем на форму следуйщие компоненты: Tmemo, OpenDialog, FindDialog.
далее делаем следуйщее згружаем текст в memo и начинаем искать нужный нам текст с помощью FindDialog далее как только нашли нужный текст делаем для него memo.CopyToClipboard и удаляем найденый текст.
ultimate вне форума
 
Ответить с цитированием Вверх
Старый 04.07.2009, 16:35   #6
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

ultimate, прога должна работать с командной строки
bssergy вне форума
 
Ответить с цитированием Вверх
Старый 04.07.2009, 18:52   #7
ultimate
Пользователь
 
Аватар для ultimate
 
Пол:Мужской
Регистрация: 31.01.2007
Сообщений: 118
Репутация: 65
По умолчанию Re: Обработка текстовых файлов

ээ.. вам бы это надо было написать сразу, ладно короче говоря вам нужен не делфи как таковой, а паскаль так как именно его синтаксис используется для написания консольных приложений в делфи (ну почти его занекоторым ислючением). Ну а по паскалю всяких мануалов в интернете не меренно.
ultimate вне форума
 
Ответить с цитированием Вверх
Старый 04.07.2009, 19:39   #8
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

ultimate, да не в этом проблема, можна и на Делфи писать. То, что в нете полно всяких мануалов я и сам знаю, но тут прошу помощи у людей, которые уже не раз наверное перечитывали все эти мануалы и знают что к чему
bssergy вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 09:46   #9
Vasuha
Постоялец
 
Пол:Мужской
Регистрация: 13.03.2008
Адрес: Минск
Сообщений: 257
Репутация: 231
По умолчанию Re: Обработка текстовых файлов

Что-то вроде этого, пойдет?
Код:
var
  sl:TStringList;
  i:integer;
begin
  sl:=TStringList.Create;
  try
    sl.LoadFromFile('C:\1.txt');
    sl.Text:=StringReplace(sl.Text,'Искомая строка','',[rfReplaceAll,rfIgnoreCase]);
    sl.SaveToFile('C:\1.txt');
  finally
    sl.Free;
  end;
__________________
Vasuha вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 13:03   #10
ultimate
Пользователь
 
Аватар для ultimate
 
Пол:Мужской
Регистрация: 31.01.2007
Сообщений: 118
Репутация: 65
По умолчанию Re: Обработка текстовых файлов

в общем вот алгоритм поиска слова, фразы.

Код:
uses crt;
var f:text;
     str:string;
     s:string;
begin
clrscr;
assign(f,'c:\1.txt');
reset(f);
write('Vvedite slovo dlja poiska:');
readln(s);	
while not eof(f) do
   begin
      readln(f,str);
      if pos(S,str)>0 then
      writeln(str);
   end;
close(f);
readln;


end.
ultimate вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 13:28   #11
Vasuha
Постоялец
 
Пол:Мужской
Регистрация: 13.03.2008
Адрес: Минск
Сообщений: 257
Репутация: 231
По умолчанию Re: Обработка текстовых файлов

Цитата:
Сообщение от ultimate Посмотреть сообщение
в общем вот алгоритм поиска слова, фразы.

Сначала тож подумал про такое, но если в конце первой строки написано "....Иванов", а в начале второй написано "Иван...." а пытаются найти: "Иванов Иван"?
__________________
Vasuha вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 18:10   #12
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

Vasuha, это уже хоть что-то, но пытался обьяснить, что нужно искать и заменять не строку, а несколько строк, которые как бы служат частью одного и того же текста. Есть кусок текста, который начинается несколькими определенными строками, между ним находятся еще какие то неопределенныме строки, и опьять же заканчивается несколькими (или одной) определенными строками, вот его нужно вырезать.

Другими словами, как определить вхождение в текст не одной строки (как это делается функцией pos) а нескольких строк?

Последний раз редактировалось bssergy; 06.07.2009 в 18:43..
bssergy вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 19:36   #13
ultimate
Пользователь
 
Аватар для ultimate
 
Пол:Мужской
Регистрация: 31.01.2007
Сообщений: 118
Репутация: 65
По умолчанию Re: Обработка текстовых файлов

а если создать строковый массив его заполнить нужными нам фразами и прогонять текст начиная с первого элемента массива и как только встречаем конец файла начинаем сканировать текст используя следующий элемент массива при этом в процессе сканирования найденные слова копируем во временный файл чтоб потом из него вырезать полностью найденную фразу ну а в основном файле удаляем найденные слова?
P.S. Сразу говорю я с паскалем дружу плохо по этому реализовывать данный алгоритм не возьмусь.
ultimate вне форума
 
Ответить с цитированием Вверх
Старый 06.07.2009, 21:52   #14
Vasuha
Постоялец
 
Пол:Мужской
Регистрация: 13.03.2008
Адрес: Минск
Сообщений: 257
Репутация: 231
По умолчанию Re: Обработка текстовых файлов

Тогда возникают встречные вопросы. Получается есть два вида спец строки типа одна открывающая другая закрывающая между ними текст уничтожить(вместе с спецстроками). А если найден спецтекст без пары? А если они рядом а текста нет, может проще выложить суть задачи?
__________________
Vasuha вне форума
 
Ответить с цитированием Вверх
Старый 07.07.2009, 00:30   #15
bssergy
Постоялец
 
Пол:Мужской
Регистрация: 11.07.2008
Адрес: Украина, Львов
Сообщений: 277
Репутация: 82
По умолчанию Re: Обработка текстовых файлов

Vasuha, это уже излишества, с которыми разберусь и сам. StringReplace мне понравилась, но как быть если между известным текстом, который нужно заменить может быть и неизвестный (но может и не быть, это я думаю несущественно и с этой ситуацией справлюсь сам), ну а если спецтекст без пары, так запрограммировать чтобы он не удалялся тоже проблеммы мне не составит. Прошу только помощи по моему основному вопросу, который хотелось бы сделать правильно и грамотно, только вот знаний пока не хватает

Последний раз редактировалось bssergy; 07.07.2009 в 00:32..
bssergy вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Notepad++ - редактор текстовых файлов ilia Офис 149 25.12.2022 09:08
Балаболка / Balabolka — программа для чтения вслух текстовых файлов gtr Freeware софт 71 29.11.2015 14:11
Нахождение разницы текстовых файлов Ghost2007 МOffice, Переводчики (словари), Органайзеры, Текстовые редакторы 4 13.12.2007 12:20
Как собрать несколько текстовых файлов в один? DearMe МOffice, Переводчики (словари), Органайзеры, Текстовые редакторы 3 24.12.2005 19:26

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 06:34. Часовой пояс GMT +3.


Copyright ©2004 - 2024 2BakSa.WS

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.18265 секунды с 11 запросами