Die Idee mit dem 86400 von mir weiter oben vergiss mal (kleiner Denkaussetzer, andere Programmiersprache).
Das hier ist die kürzeste Lösung:
Delphi-Quellcode:
function GetDayIdx(const Day: string): Byte;
begin
Result := (Pos(Lowercase(Day) + '|', ' |sun|mon|tue|wed|thu|fri|sat|') div 4 + 7 - DayOfWeek(Date)) mod 7;
end;
Gibt allerdings nicht immer 0 zurück für unbekannte Tage.