BookmarkSubscribeRSS Feed
georgiaf
Calcite | Level 5

I have one of the data field SENT_DATE=' Wednesday, September 06, 2017 10:14 PM' and '2017-07-14 13:01:00.0'. I am using

sent_date1=input(sent_date, e8601dt19.) and format sent_date1 datetime19.all the '2017-07-14 13:01:00.0' to be SAS datetime format. However it can't change the ' Wednesday, September 06, 2017 10:14 PM'.  I tried different ways, it failed. How to deal with it?

2 REPLIES 2
Reeza
Super User
Did you try anydtdtm. informat for the WordDate, or a worddate informat, if it exists?
PGStats
Opal | Level 21

Try this:

 

data test;
do txt = 
    "Wednesday, September 06, 2017 10:14 PM",
    "2017-07-14 13:01:00.0";
    if anydigit(first(txt)) then 
         date = input(txt, e8601dt19.);
    else date = input(prxchange("s/\s*\w+,\s*//o",1,txt), anydtdtm40.);
    output;
    end;
format date datetime19.;
run;

proc print; run;
PG

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1043 views
  • 0 likes
  • 3 in conversation