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

Вниз

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

 
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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.076 c
1-1089051990
Кастуся
2004-07-05 22:26
2004.07.25
Проверка стринги


14-1088950211
Rouse_
2004-07-04 18:10
2004.07.25
общий доступ к C: WINDOWS system32 spool drivers


1-1089645817
ghg
2004-07-12 19:23
2004.07.25
дополнительные параметры в стандартных обработчиках событий


8-1084188673
Никита
2004-05-10 15:31
2004.07.25
Воспризведение DWD


14-1089085236
jb
2004-07-06 07:40
2004.07.25
Чего бы плохого шефу сделать





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