zub, для особо талантливых, повторяю. НЕТ у меня возможности убрать гигантскую строку -- она данность компонента. И работать с ней приходится методами компонента. И любые методы оптимизации должны учитывать данный факт. Или у тебя есть какой-нибудь FastMemo? А преобразования туда-сюда только из-за модных тенденций (даже ускоряющих работу) это путь ведущий к еще большим тормозам. Я не могу даже напрямую вставить, в процессе преобразования, символы конца строки, так как они просто тупо игнорируются.
А вариант работы с memo напрямую, кстати, (как предлагается) грозит еще бОльшими тормозами, так как текст пересчитывается после каждого измененного символа. И еще надо как-то его отображать Ах да... в контексте данной работы мне нет необходимости работать с плавающими длинами символов -- я ищу всего-лишь символы '<' и ">" и несколькими обрывками тегов, для проверки необходимости разбивания строки на несколько. Это сделано сознательно.
ЗЫ: пока прихожу к мнению, что надо экспортировать текст из Memo в текстовый буфер и просто построчно (или по мере исчерпания буфера) скидывать его обратно.