%let var = name age height;
%let var1 = %sysfunc(translate(&var, %str(), %str(,)));
%put &var1;
This is giving me output as name age height
but I need it as name ,age, height
Please correct where I am going wrong
Documentation. The second parameter is the TO value, the third is the From
%let var = name age height; %let var1 = %sysfunc(translate(&var, %str(,), %str( ))); %put &var1;
@nxmogil wrote:
%let var = name age height;
%let var1 = %sysfunc(translate(&var, %str(), %str(,)));
%put &var1;
This is giving me output as name age height
but I need it as name ,age, height
Please correct where I am going wrong
The TRANSLATE function expects the "to" value to come before the "from" value. So your expression translates the commas to blanks. Reverse the second and third parameters:
%let var1 = %sysfunc(translate(&var, %str(,), %str( )));
Be sure to add a blank in side the %str function. Nulls are different than blanks in macro language.
@Astounding wrote:
So your expression translates the commas to blanks.
Worse still, it would interpret words delimited by commas in &var, if any, as separate function arguments and hence apply unwanted additional character replacements to the first word only ...
Documentation. The second parameter is the TO value, the third is the From
%let var = name age height; %let var1 = %sysfunc(translate(&var, %str(,), %str( ))); %put &var1;
@nxmogil wrote:
%let var = name age height;
%let var1 = %sysfunc(translate(&var, %str(), %str(,)));
%put &var1;
This is giving me output as name age height
but I need it as name ,age, height
Please correct where I am going wrong
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.
Ready to level-up your skills? Choose your own adventure.