gpt4 book ai didi

sas - 在 proc http SAS 中解析 & 号

转载 作者:行者123 更新时间:2023-12-04 21:15:17 24 4
gpt4 key购买 nike

我在宏函数中有这个简单的 PROC HTTP 过程。

我不想解析 &trainname 和 &date。但是 &datum 和 &treinnumer 必须解析。

我尝试使用 %nrstr 和 %str 宏函数进行试验,但没有任何效果。

 %macro treinnummers(treinnummer,datum);
filename uit "/home/myfolder/sasuser.v94/test.html";
proc http url="http://www.belgianrail.be/jpm/sncb-nmbs-routeplanner/trainsearch.exe/nox?ld=abcde%nrstr(&trainname)=&treinnummer.%nrstr(&date)=&datum."out=uit;
run;
%mend;

最佳答案

有很多方法!我发现一种可靠的方法是使用数据步骤创建您的 URL,然后通过 %superq() 调用,如下所示:

%macro treinnummers(treinnummer,datum);
filename uit "/home/myfolder/sasuser.v94/test.html";
data _null_;
format html $2048.;
html=cats("http://www.belgianrail.be"
,"/jpm/sncb-nmbs-routeplanner/trainsearch.exe/nox?"
,'ld=abcde'
,'&trainname=',"&treinnummer"
,'&date=',"&datum");
call symputx('html',html,'l');
run;
proc http url="%superq(html)" out=uit; run;
%mend;

请注意上面的“技巧”是将宏变量放在单引号中以防止解析。参见 here更多解释..

关于sas - 在 proc http SAS 中解析 & 号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40112756/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com