上一頁|下一頁

%KUPCASE 和 %QKUPCASE 巨集函數

將值轉換為大寫。

類別: DBCS
類型: NLS 巨集函數

語法

%KUPCASE (character string | text expression)
%QKUPCASE (character string | text expression)

詳細資料

%KUPCASE 和 %QKUPCASE 函數會將引數中的小寫字元轉換為大寫。 %KUPCASE 不會在其結果中遮罩特殊字元或助憶運算子。
如果引數包含特殊字元或助憶運算子 (如這裡所示),請使用 %QKUPCASE。 %QKUPCASE 會在其結果中遮罩下列特殊字元和助憶運算子:
& % ' " ( ) + − * / < > = ¬ ^ ~ ; , # blank
AND OR NOT EQ NE LE LT GE GT IN
%KUPCASE 和 %QKUPCASE 適用於比較值,因為巨集設備不會先自動將小寫字元轉換為大寫,再進行比較。

範例

範例 1: 將要比較的值的首字大寫

在此範例中,巨集 RUNREPT 會比較巨集變數 MONTH 的輸入值與字串 DEC。如果回應的大寫值是 DEC,則 PROC FSVIEW 會在資料集 REPORTS.ENDYEAR 上執行。否則,PROC FSVIEW 會在含有 REPORTS 資料館中月份名稱的資料集上執行。
%macro runrept(month);
%if %kupcase(&month)=DEC %then
%str(proc fsview data=reports.endyear; run;);
%else %str(proc fsview data=reports.&month; run;);
%mend runrept;
您可以用下列任一方法來叫用巨集,以滿足 %IF 條件:
%runrept(DEC)
%runrept(Dec)
%runrept(dec)

範例 2: 比較 %KUPCASE 與 %QKUPCASE

這些陳述式顯示 %KUPCASE 和 %QKUPCASE 所產生的結果:
%let a=begin;
%let b=%nrstr(&a);
%put KUPCASE produces: %kupcase(&b);
%put QKUPCASE produces: %qkupcase(&b);
執行這些陳述式時,會將下列資訊寫入 SAS 日誌:
KUPCASE produces: begin
QKUPCASE produces: &A
上一頁|下一頁|頁面頂端