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,));
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.