Delphi(程序人生)

Delphi Programer DoubleCat

导航

YYYY-MM-DD的正则表达式

procedure TForm1.Edit1Exit(Sender: TObject);
var
  theDate:string;
  reg : TperlRegex;
begin
  theDate := Edit1.Text;
  reg := TPerlRegEx.Create(self);
  reg.Subject := theDate;
  reg.RegEx := '^((((19|20)\d{2})-(0?[13-9]|1[012])-(0?[1-9]|[12]\d|30))|(((19|20)\d{2})-(0?[13578]|1[02])-31)|(((19|20)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))-0?2-29))$';
  if reg.Match then Edit1.Text := theDate else Edit1.Text := '';
end;

------

DoubleCat

posted on 2010-09-24 21:37  DoubleCat  阅读(601)  评论(0编辑  收藏  举报