マクロの実行時に、置換された値に含まれている特殊文字やニーモニック演算子をマスクします。
| 種類: | マクロクォーティング関数 |
| 参照項目: | %QUOTE関数と%NRQUOTE関数および %SUPERQ関数 |
' " ( ) + − * / < > = ¬ ^ ~ ; , # blank AND OR NOT EQ NE LE LT GE GT IN
& %
'") をマークする必要はありません。
%macro fileit(infile);
%if %bquote(&infile) NE %then
%do;
%let char1 = %bquote(%substr(&infile,1,1));
%if %bquote(&char1) = %str(%')
or %bquote(&char1) = %str(%")
%then %let command=FILE &infile;
%else %let command=FILE "&infile";
%end;
%put &command;
%mend fileit;
%fileit(myfile)
%fileit('myfile')FILE "myfile" FILE 'myfile'