用于在宏中调用宏函数的正确语法

时间:2015-11-15 17:53:45

标签: sas sas-macro

让我们说我写了一个SAS宏,在那个宏中,我希望调用宏函数TRIM。 我需要写:

%sysfunc(%修整(安培;文本))

或%修剪(& text。)

或者 %sysfunc(修整(安培;文本))

正确的语法是什么?

2 个答案:

答案 0 :(得分:2)

没有宏功能修剪。因此,这取决于您是否要调用SAS提供的自动调用宏%TRIM(),或者是否要使用函数TRIM()。如果稍后您需要使用%SYSFUNC()将其嵌套在宏函数%SYSFUNC(TRIM())中。

答案 1 :(得分:2)

关于SYSFUNC或SYSFUNC的基本规则:

如果您从this page, the Dictionary of SAS Functions and Call Routines运行某项功能,则使用SYSFUNC

如果它位于this page或相关页面(“Autocall Macros”在此处相关),则您使用%并且不使用SYSFUNC

在某些情况下,%trim就是其中之一,你可以两者 - 获得或多或少相同的结果(SYSFUNC和autocall的方式可能会有细微差别宏观工作,特别是与宏报价有关。)