procedure TForm1.Button1Click(Sender: TObject); begin showmessage(change(edit1.Text,-5)); end;function Tform1.change(par : string;count : integer):string; var str : string; date : Tdate; begin str :=copy(par,0,4)+'-'+copy(par,5,2)+'-01'; date :=strtodate(str); result :=copy(datetostr(incmonth(date,count)),0,6); end;
S := FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', StrToDateTime('2/15/95 10:30am'));
Function GetMonth(s: String; i:Integer): String; var j, k, l, m: Integer; begin j:=StrToInt(Copy(s,1,4)); k:=StrToInt(Copy(s,5,2)); l:=i div 12; m:=i mod 12; if k>m then Result:=IntToStr((j-l)*100+(k-m)) else if k=m then Result:=IntToStr((j-l-1)*100+12) else Result:=IntToStr((j-l-1)*100+(12+k-m)); end;
begin
showmessage(change(edit1.Text,-5));
end;function Tform1.change(par : string;count : integer):string;
var
str : string;
date : Tdate;
begin
str :=copy(par,0,4)+'-'+copy(par,5,2)+'-01';
date :=strtodate(str);
result :=copy(datetostr(incmonth(date,count)),0,6);
end;
var j, k, l, m: Integer;
begin
j:=StrToInt(Copy(s,1,4));
k:=StrToInt(Copy(s,5,2)); l:=i div 12;
m:=i mod 12; if k>m then Result:=IntToStr((j-l)*100+(k-m))
else if k=m then Result:=IntToStr((j-l-1)*100+12)
else Result:=IntToStr((j-l-1)*100+(12+k-m));
end;