Hi,
I'd like to store the project name from my project path into a macro variable...
For example, let say my path is '/myprojectpath/filename'. I want to store the macro variable 'filename'.
Here is the macro that I have started to develop, without success :
%macro prgname; %let s = &_CLIENTPROJECTPATH.; %let delims = '\'; %let n = %sysfunc(countw(&s, &delims)); %let words = %sysfunc(scan(&s, 1:&n, &delims)); %mend prgname;
Could you highlight me ?
Thanks for your attention.
Clément
The scan function has an option to start searching from the end of the string, called "B". Or you could use a negative number as second argument, so something like
%let cpp = %sysfunc(dequote(&_ClientProjectPath));
%let words = %sysfunc(scan(&cpp, -1, %str(\)));
should work.
Ok,
I think I have a better code than the previous one but still does not work...
%let fname = %sysfunc(scan(&_CLIENTPROJECTPATH,-1,"\")); %put &fname;
Any ideas ?
The scan function has an option to start searching from the end of the string, called "B". Or you could use a negative number as second argument, so something like
%let cpp = %sysfunc(dequote(&_ClientProjectPath));
%let words = %sysfunc(scan(&cpp, -1, %str(\)));
should work.
Thank you Andreas,
It works perfectly !
%let name=%sysfunc(tranwrd(&_CLIENTPROJECTNAME,&_CLIENTPROJECTPATH,));
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!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.