如何打印出感兴趣的变量的格式? 注意我简化了我的例子
%让var_ ='1sep2014' %put | VARTYPE(安培; VAR _)
我希望这会返回日志中的格式类型,但它只会返回 | VARTYPE(安培; 1sep2014)
答案 0 :(得分:2)
找不到与字符串匹配的格式是没有办法的简单方法。正如mjsqu所说,函数vartype
没有达到你所希望的效果。
但是,如果您希望在宏变量赋值或%put
语句中使用datastep函数,则可以使用%sysfunc()
宏函数。
代码:
/* Assignment of a string to a macro variable*/
/* SAS date literal "DDMMYYYY"d will be automatically evaluated later */
%let v1 = "01sep2014"d;
%put &v1;
/* Use off a datastep function in an assignment, evaluates date literal as number */
%let v2 = %sysfunc(putn(&v1, date9.));
%put &v2;
/* Use of a datastep function in a %put statement */
%put %sysfunc(putn(&v1, yymmdd10.));
输出:
"01sep2014"d
01SEP2014
2014-09-01