How to check the date format

Reply
Occasional Contributor
Posts: 10

How to check the date format

Hi all,

I have a Data set, it contains date column .My requirement is if the date values is not in the  given format i just want to reject the record.

Example:

Data One;

informat Bday yyyymmn6.;

format Bday yyyymmn6.;

input Bday yyyymmn6.;

cards;

201401

201402

20140312

;

run;

I dont want the third record because it is not in given format and i want to capture in another table, for this is there any functions whether the date value is in particular format.

So can any one have idea on above case.

Respected Advisor
Posts: 4,654

Re: How to check the date format

The most flexible tool to achieve this is pattern matching :

Data One;

format Bday yymmn6.;

input BdayTxt $ ;

if prxmatch("/^[12]\d{3}[01]\d$/o", trim(bDayTxt)) then Bday = input(BdayTxt, yymmn6.);

cards;

201401

201402

20140312

;

proc print data=one; run;

PG

PG
Super Contributor
Posts: 275

Re: How to check the date format

Try this:

Data One;

input@;

if length(_infile_)^=6 then delete;

input Bday ;

informat Bday yymmn6.;

format Bday yymmn6.;

cards;

201401

201402

20140312

201406

;

run;

proc print;

run;

Ask a Question
Discussion stats
  • 2 replies
  • 295 views
  • 0 likes
  • 3 in conversation