function StrStartsWith(var OriginalStr: string; const StartsWith: string; const IgnoreCase, Trim: Boolean): Boolean; var PartOfOriginalStr: string; NewStartsWith: string; begin PartOfOriginalStr := Copy(OriginalStr, 1, Length(StartsWith)); NewStartsWith := StartsWith; if IgnoreCase then begin PartOfOriginalStr := LowerCase(PartOfOriginalStr); NewStartsWith := LowerCase(NewStartsWith); end; Result := PartOfOriginalStr = NewStartsWith; if (Result = True) and (Trim = True) then Delete(OriginalStr, 1, Length(NewStartsWith)); end;