Рассмотрим следующий фрагмент кода sas:
%macro temp(querystr=);
filename request temp;
data _null_;
file request;
put "<string>&querystr</string>";
run;
%mend temp;
%temp(querystr="term 1" and "term2");
Обратите внимание, что этот фрагмент кода не будет компилироваться, поскольку первая кавычка в querystr закроет начальную кавычку оператора put, когда компилятор заменит querystr на шаге данных.
Я хотел бы замаскировать кавычки в строке запроса, чтобы преобразовать ее в действительный фрагмент XML, например:
<string>"term 1" and "term 2"</string>
Есть ли способ вывести вышеуказанную строку в файл с правильной маскировкой кавычек? Я пытался использовать функцию% sysfunc (TranWrd ()) в сочетании с такими функциями маскирования, как% nrbquote () и т. Д., Но до сих пор не нашел работающего решения. Любая помощь приветствуется!