При использовании макросов вам не нужно использовать кавычки для строковых аргументов в функциях. Кавычки передаются в точности как PRXMATCH
, поскольку средство макросов SAS предназначено для обработки необработанного текста. Удалите кавычки, и они будут работать, как и ожидалось.
%let ph=FONDS DE BOURSE;
%LET A=%sysfunc(PRXMATCH(/bourse/i,&ph));
%put &A;
При использовании шага данных вам нужно будет использовать кавычки для первой части аргумента. Строки без кавычек обрабатываются как переменные.
data test;
ph='FONDS DE BOURSE';
A=PRXMATCH("/bourse/i", ph);
run;