data have;
length x $200;
x="(values=[DECOD] [TEXT])"; output;
x='(values=[DECOD] [TEXT] "NOT REPORTED")'; output;
x='(values= "NOT REPORTED" [DECOD] "Zero data" [TEXT] )';output;
x='(values= [TEXT] "Not Reported,NOW" [DECOD] )';output;
;
run;
data want;
set have;
length y $200;
y= prxchange('s/\[/strip(/',-1, x);
y= prxchange('s/\]/),/',-1, y);
y=prxchange('s/\(values=/VAR=COALESCEC(/',-1, y);
y=prxchange('s/" s/",s/',-1, y);
y=prxchange('s/,\)/)/',-1, y);
y=prxchange('s/, \)/)/',-1, y);
y=prxchange('s/, \)/)/',-1, y);
run; Hope can help you
... View more