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

Поиск и замена строки в текстовом файле   Найти похожие ветки 

← →
Helper   (2004-07-08 16:38) [0]

Уважаемые программеры, помогите с решением.
Только начал изучать Делфи, попалась такая задачка, помогите реализовать :
Есть текстовый файл надо его открыть, допустим в Memo, найти в    нём строку напр. (Delphi) и заменить её на напр.   (Borland).

Исходные коды не помешали бы.

Зарнее Вам благодарен.


← →
ssk ©   (2004-07-08 16:43) [1]

Memo1.Text:=StringReplace(Memo1.Text, "Delphi", "Borland", [rfReplaceAll]);


← →
MBo ©   (2004-07-08 16:44) [2]

найти - Pos
заменить - StringReplace или Delete/Insert


← →
Helper   (2004-07-08 16:57) [3]

Memo1.Text:=StringReplace(Memo1.Text, "Delphi", "Borland", [rfReplaceAll]);

Этот код немного не подходит, но всё равно спасибо.
Обьясню почему:
У меня есть заготовка в текстовом файле, она имеет много строк и букв, где - то в середине находится то слово которое мне надо заменить, приведённый выше пример заменяет всё полностью, а мне надо только то слово.


← →
ssk ©   (2004-07-08 16:59) [4]

и как по Вашему можно определить именно то слово, если их в тексте, допустим, 20?


← →
Zhekson   (2004-07-08 17:08) [5]

Memo1.Text:=StringReplace(Memo1.Text, " Delphi ", " Borland ", [rfReplaceAll]); - попробуй так.


← →
Helper   (2004-07-08 17:18) [6]

"и как по Вашему можно определить именно то слово, если их в тексте, допустим, 20?"

Нет оно там точно 1, больше не должно быть

"Memo1.Text:=StringReplace(Memo1.Text, " Delphi ", " Borland ", [rfReplaceAll]); - попробуй так."

Выше написал, что так не получается :(.


← →
ssk ©   (2004-07-08 17:26) [7]

напиши сюда свою строку


← →
Helper   (2004-07-08 17:33) [8]

напрмер мне надо найти вот такую строку :

Операционная система : [$Os         ]

Надо в файле найти вот это - $Os и заменить например на Windows XP, в файле оно встречается 1 раз.


← →
Zhekson   (2004-07-08 17:36) [9]

я имел в виду, попробуй пробелы до и после своих слов поставить.


← →
Zhekson   (2004-07-08 17:42) [10]

Ну в любом случае Вы ищете кусок строки, которая идентифицирует искомую вами комбинацию. Вот её и вставьте в: "
Memo1.Text:=StringReplace(Memo1.Text, "???", " Borland ", [rfReplaceAll]); "


← →
ssk ©   (2004-07-08 17:44) [11]

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


var
 s: string;
begin
 s:="до символа $Os после символа"; // старая строка
 ShowMessage(s); // показываем
 s:=StringReplace(s, "$Os", "XP", [rfReplaceAll]); // сделали новую строку
 ShowMessage(s); //показываем
end;


← →
Helper   (2004-07-08 18:36) [12]

Что то у меня оно не меняет то значение на новое, могу в принципе прислать пример на почту, что б было понятней


← →
ssk ©   (2004-07-08 18:37) [13]

давай serpantin@list.ru


← →
Helper   (2004-07-08 18:43) [14]

Ушло 10 кб.


← →
Mim1 ©   (2004-07-08 18:59) [15]

В принципе те задачи котрые нельзя описать словами не решаемы.


← →
ssk ©   (2004-07-08 19:03) [16]

посмотрел я исходник. все решается в 4 строки, если я правильно понял автора вопроса.


← →
Helper   (2004-07-08 19:08) [17]

ssk Спасибо огромное помогло, и всем кто отвечал также спасибо

ssk вот ещё маленький вопросец, а как сделать так чтоб после того текста который я вставил, эта рамка не перемещалась в сторону, что б рамка была фиксирована.


← →
Helper   (2004-07-08 20:38) [18]

ssk ты знаеш как это реализовать ,помоги пожалуйста



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

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



Память: 0.48 MB
Время: 0.043 c
4-1087154940
DjOne
2004-06-13 23:29
2004.07.25
Tabs


1-1089565332
Фёдор Мегатронов
2004-07-11 21:02
2004.07.25
Как узнать размер фаила в инете ?


6-1085374314
aper
2004-05-24 08:51
2004.07.25
как проверить доступна ли сетевая папка.


3-1088617141
Boroda Oleg
2004-06-30 21:39
2004.07.25
Как застраховаться от нулевых вложенных запросов?


1-1089748982
far
2004-07-14 00:03
2004.07.25
Файлы ресурсов для компонентов




   Наверх