Потом совсем недавно узнал про компонент мультистрочной замены и возрадовался (в старой сборке его не было) - подумалось мне что он быстрее будет. (Скорость так и не удосужился замерить на хорошем кусочке текста)
Видимо у меня задача не та просто. Я-то думал что в компоненте все как в моей схеме, только компактнее, а оказалось что он работает именно как много реплейсов подряд. И сбило меня с толку именно то, какой формат замен у него - упорядоченный. Думал берет он и перебирает как по таблице их. Совпало - выкинул замененную строку и все. Так что возвращаюсь к своей любимой безотказной маске строк

И работает компонент нормально, просто те же замены, только удобнее их задавать, как я теперь понял.