You will probably need to use SCAN() to break that string into its pieces so you can combine them together in the right way to make datetime value.
Example:
data have;
input original_date $50.;
datalines;
Mon Mar 11 12:01:41 UTC 2024
;
data want;
set have;
dayname=scan(original_date,1,' ');
monname=scan(original_date,2,' ');
day=input(scan(original_date,3,' '),?32.);
tod=input(scan(original_date,4,' '),time24.);
tz=scan(original_date,5,' ');
system_tz = getoption('timezone');
year=input(scan(original_date,6,' '),?32.);
date=input(cats(day,monname,year),date9.);
datetime=dhms(date,0,0,tod);
offset = tzoneoff(tz,datetime);
format tod tod8. date date9. datetime E8601dt.;
put (_all_) (=/);
run;
Result
original_date=Mon Mar 11 12:01:41 UTC 2024
dayname=Mon
monname=Mar
day=11
tod=12:01:41
tz=UTC
system_tz=
year=2024
date=11MAR2024
datetime=2024-03-11T12:01:41
offset=0
... View more