String jest tak naprawdę tablicą - właśnie
array [] of char, tyle, że przystosowaną do przechowywania wyrazów. Zatem zapis
array [] of string utworzy Ci tablicę tablic, czyli taką jakby tablicę dwuwymiarową.
Jeżeli tekst do przeszukania ma mieć 255 znaków, to tylko upraszcza sprawę - string może mieć do 255 znaków, więc można go użyć.
Jeden błąd w Twoim kodzie:
nie możesz zadeklarować zmiennej i stałej o tej samej nazwie (
tekst). Widzę też, że tekst do przeszukania nie musi być podany zewnętrznie, więc możesz zrobić tak:
var
tekst: string;
...
begin
...
tekst := "tekst do przeszukania";
...
end.
Zmienna
wyraz może być zadeklarowana jako string - nie podałem Ci przecież gotowego rozwiązania, a jedynie algorytm poglądowy

.
Wtedy należy jednak zadeklarować dlugosc_wyrazu nie jako stałą, ale jako zmienną, a po wczytaniu szukanego wyrazu określić jego długość i wstawić do tejże zmiennej
dlugosc_wyrazu := Length(wyraz);
oraz warunek zakończenia zewnętrznej pętli repeat dostosować do długości tekstu do przeszukania.
Powodzenia.