| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Быстрая замена в тексте |
| Автор: rodendron 2.7.2007, 08:17 |
| Добрый день, коллеги. Хотел попросить совета насчет быстрого работающего аналога StringReplace. Основные пожелаения - чтобы была возможность заменять без учета регистра. Так вот, вышеупомянутая функция работает довольно долго. Находил аналоги, вроде даже работало у меня на небольших фрагментах, но текст размером с веб страничку выпадал в ошибку. Слышал еще чего-то про QStrings - но библиотеки и описания в сети не нашел. Основная моя задача - увеличить в дестяки раз функцию StringReplace. Плюс, при возможности, чтобы синтаксис был похожий. А то уж больно много сейчас в программе использования функции. Чтобы я создал нужную процедуру, и просто выбрал поиск/замена, было бы вообще здорово(этой фразой я хотел сказать, что для замены в тексте чтобы не приходилось создавать доп структуры или можно было бы вынести это все в функцию). Заранее вам всем благодарен и с нетерпением буду ждать ответа. С уважением, |
| Автор: rodendron 2.7.2007, 09:11 |
| Спасибо. Буду сейчас там разбираться как происходит замена. Добавлено @ 09:12 Там есть механизмы замены, или только поиск вхождений? Добавлено @ 09:14 Буду вот с этим играться. Невнимательный млин я с возратом стал: --- function Q_ReplaceStr(const SourceString, FindString, ReplaceString: string): string; |
| Автор: rodendron 2.7.2007, 10:09 |
| Всем спасибо! Работает без запинки. Только вот маленький попутный вопрос, не в курсе, там есть удаление с использованием регулярных выражений? Удалить все, что между <head>...</head> например? А то пока я этого не нашел |
| Автор: rodendron 2.7.2007, 11:02 |
| Просто нашел один недочет. Если я выбираю подстроку и в ней есть невалидный символ, то QString отваливается, а StringReplace срабатывает |
| Автор: MetalFan 2.7.2007, 12:44 |
| доработать напильником QStrings. по поводу рег.выражений - уже не раз обсужалось вроде. в поиск) |
| Автор: rodendron 2.7.2007, 14:23 |
| MetalFan, пасиб, дружище. Про регулярные выражение я уже почти все знаю А вот с QString придется напильником |