从宏变量中删除引号
Remove quotes from a macro variable
我是 SAS 编程的新手,我正在尝试更改一些宏变量的值。
我的程序中有一些参数,您可以在其中插入 2 个产品代码,例如“12345”、“54321”,您必须按字面意思输入它们,包括引号和所有内容。
这些值存储在 &product 宏变量中,因此如果我们执行 %put &product;会 return 我们 '12345','54321'.
我想做的是删除中间的那些引号,结果是“12345,54321”
我试过这样做:
%let producto = '12345','54321';
%let product = %sysfunc(tranwrd(&producto,"'"," "));
ERROR: The function TRANWRD referenced by the %SYSFUNC or %QSYSFUNC macro function has too many arguments.
但是它告诉我tranwrd有很多参数,有谁知道为什么?谢谢
producto 中的逗号需要用引号引起来
%superq(PRODUCTO)
%SYSFUNC
的第二个和第三个参数也不正确
%str(%'),%str( )
我是 SAS 编程的新手,我正在尝试更改一些宏变量的值。
我的程序中有一些参数,您可以在其中插入 2 个产品代码,例如“12345”、“54321”,您必须按字面意思输入它们,包括引号和所有内容。
这些值存储在 &product 宏变量中,因此如果我们执行 %put &product;会 return 我们 '12345','54321'.
我想做的是删除中间的那些引号,结果是“12345,54321”
我试过这样做:
%let producto = '12345','54321';
%let product = %sysfunc(tranwrd(&producto,"'"," "));
ERROR: The function TRANWRD referenced by the %SYSFUNC or %QSYSFUNC macro function has too many arguments.
但是它告诉我tranwrd有很多参数,有谁知道为什么?谢谢
producto 中的逗号需要用引号引起来
%superq(PRODUCTO)
%SYSFUNC
的第二个和第三个参数也不正确%str(%'),%str( )