Pers.narod.ru. Обучение. Примеры по C++ Builder. Метод StringReplace из VCL

StringReplace - это стандартная функция библиотеки VCL, позволяющая на C++ Builder (или Delphi) тривиально делать множественную замену строк в тексте, причём, без всякого "ручного" разбора. Опять пример того, когда ничего парсить не нужно (хотя и полезно бывает при обучении поразбирать любые строки "вручную").

Пример: в поле ввода Edit1 содержится текст, который надо заменить в файле, Edit2 содержит текст, на который заменяем, SList - это список TStringList, в который мы загружаем файл (список создаётся программно), результат пишем в многострочное текстовое поле Memo1. Наконец, OpenDialog1 - стандартный диалог открытия файла с вкладки палитры компонентов Dialogs.

Код будет такой:

TStringList *sList = new TStringList;
if (OpenDialog1->Execute()) {
 sList->LoadFromFile(OpenDialog1->FileName);
 Memo1->Text = sList->Text;
}

//...

String str = StringReplace( sList->Text, Edit1->Text, Edit2->Text, 
 TReplaceFlags() << rfReplaceAll << rfIgnoreCase);
Memo1->Text =  str;

Это всё, пример, думаю, напишете сами :) Предполагается, что всё в Юникоде, тогда не должно быть проблем с поиском и заменой кириллицы.

Рейтинг@Mail.ru

вверх гостевая; E-mail
Hosted by uCoz