![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Нужно заменить текст в memo1. Код работает но очень медленно, а мемо содержит 15 тыс строк.
Сам код вот: PHP код:
Вопрос: можно ли как-то ускорить замену? |
#2
|
|||
|
|||
![]() можно без строк:
Memo1.Text := StringReplace(Memo1.Text, 'null', '''null''', [rfReplaceAll, rfIgnoreCase]); |
#3
|
|||
|
|||
![]() Знаю что можно, но скорости это не прибавляет
![]() |
#4
|
|||
|
|||
![]() А вот если так:
Код:
f:= TStringList.Create(); f.Text:= mmo1.Text; mmo1.Text := StringReplace(f.Text, 'null', '''null''', [rfReplaceAll, rfIgnoreCase]); |
#5
|
|||
|
|||
![]() Действительно, StringReplace на больших объемах работает очень медленно. Лучше напиши руками.
|
#6
|
||||
|
||||
![]() Обрабатывай текст не в мемо, а в памяти. После обработки выводи. Уменьшит наглядность, но должно помочь в скорости.
В начале был Бит, потом Байт и только потом появилось Слово... |
#7
|
|||
|
|||
![]() Цитата:
а лучше без стринглиста Код:
S:String; S:= mmo1.Text; mmo1.Text := StringReplace(S, 'null', '''null''', [rfReplaceAll, rfIgnoreCase]); |