I have a syntax like below. I what to add a space between two variable. Please help me on this
text2 = cats('"/user/path`',&year,put(lastmonth,nlstrmon.),'filename.txt','"');
for example I am expecting a output like below
"/user/path/2016 AUGUST filename.txt"
Might resort to the old school way:
%let year=2016;
data test;
lastmonth=8;
text2 = cats('"/user/path/',&year,' ',put(lastmonth,nlstrmon.),'filename.txt','"');
text_want='"/user/path/'||strip(&year)||' '||put(lastmonth,nlstrmon.)||' '||'filename.txt'||'"';
run;
Add a space before filename.txt?
Otherwise switch from the CATS() function to a different version of the CAT family of functions that honours spaces.
You can use the || operator as well.
Edit: CATT trims trailing blanks, but keeps leading blanks.
Might resort to the old school way:
%let year=2016;
data test;
lastmonth=8;
text2 = cats('"/user/path/',&year,' ',put(lastmonth,nlstrmon.),'filename.txt','"');
text_want='"/user/path/'||strip(&year)||' '||put(lastmonth,nlstrmon.)||' '||'filename.txt'||'"';
run;
Thanks a lot. It works great
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.