Пытался сделать так
RED1.SelStart:=System.Pos(']',RED1.Text);
RED1.SelLength:=Length(RED1.Text)-system.Pos('[$',RED1.Text);
но он не работает как надо. Тогда надо использовать не просто поиск а найти далее так как код после которого нужно выделять например вот [$FF8080]
Он может быть [$FF8080] [$C08000] [$000040]
общее у них только [$ и ] надо по этим строчком выделить текст
Надо выделять так чтобы в итоги получалось это
так что надо еще выделять до начало новой строки не только до [$