Biostat/SAS Macro

SAS Macro 매크로 함수 %SUBSTR, %QSUBSTR

카이집사

%SUBSTR (변수, 위치<,길이>)   %QSUBSTR (변수, 위치<,길이>) 

 

변수 문자열의 일부만 추출할 때 사용되는 함수로, 가볍게 다음과 같이 보고서 생성 일자를 제목으로 하고자 할 때 다음과 같이 사용할 수 있다. 

 

TITLE “Report for %SUBSTR(&SYSDAY, 1,3), &SYSDATE” ;

 

%let a=one;
%let b=two;
%let c=%nrstr(&a &b);
%put C: &c;
%put With SUBSTR: %substr(&c,1,2); ------ (1)
%put With QSUBSTR: %qsubstr(&c,1,2);--- (2)
 
(1) %SUBSTR 에서는 C에 해당하는 문자열에서 처음부터 2자리 해당되는 문자추출, 매크로 변수로 인식하여 매크로 변수에 해당되는 문자를 나타낸다. 따라서 출력되는 결과물은 one 이다. 
 
(2) %QSUBSTR 함수는 C에 해당하는 문자열그대로 인식, 처음부터 2자리 해당되는 문자 추출한다. 즉, ‘&’ 기호를 문자로 인식, 그대로 나타내기 때문에 결과물은 &a 가 된다.