Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на Delphi


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

Jimhucksly
Статус: 5-й класс
Рейтинг: 667
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 565
∙ повысить рейтинг »
Тимошенко Дмитрий
Статус: Студент
Рейтинг: 430
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Номер выпуска:1428
Дата выхода:14.09.2009, 20:00
Администратор рассылки:Калашников О.А., Руководитель
Подписчиков / экспертов:572 / 201
Вопросов / ответов:1 / 1

Вопрос № 172028: Есть два текстовых документа (1.txt и 2.txt ) в текстовом документе нужно найти слово заключенное между двумя запятыми, далее это слово нужно найти в текстовом документе два, и вывести в мемо следующее слово после этого. Программа должна быть на дел...



Вопрос № 172028:

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

Отправлен: 09.09.2009, 19:52
Вопрос задал: игроман, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Евгений/Genia007/, Студент :
Здравствуйте, игроман.
У меня получился следующий код
Код:
unit Unit12;

interface

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

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

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
string1, string2: TStringList;
s, s1, s2: String;
i, j, a, b: integer;
begin
a:= 0;
b:= 0;
s:= '';
s1:= '';
string1:= TStringList.Crea te;
string2:= TStringList.Create;
string1.LoadFromFile('1.txt');
string2.LoadFromFile('2.txt');
for I := 0 to string1.Count - 1 do
s:= string1.Strings[i];
for J := 0 to length(s) - 1 do
begin
if s[j] = ',' then
inc(a);
if (a = 1) AND (s[j] <> ' ') AND (s[j] <> ',') then
s1:= s1 + s[j];
end;
Memo1.Lines.Add(s1);
b:= Length(s1);
for I := 0 to string2.Count - 1 do
begin
s:= string2.Strings[i];
a:= pos(s1, s);
If a > 0 then
begin
delete(s, 1, a + b);
if s[1] = ' ' then
delete(s, 1, 1);
for J := 1 to length(s) - 1 do
begin
if s[j] <> ' ' then
s2:= s2 + s[j]
else
break;
end;
end;
end;
Memo1.Lines.Add(s2);
string1.Free;
string2.Free;
end;

end.

В memo сначала выводится искомое слово, а затем слово из второго файла идущее следом, слова в файлах должны разделяться пробелами.
-----
Помогли тебе, помоги и ты.

Ответ отправил: Евгений/Genia007/, Студент
Ответ отправлен: 10.09.2009, 17:34

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 254043 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.8 от 28.08.2009

    В избранное