楼主: dxystata
1644 5

判断&vars是否含有逗号 [推广有奖]

版主

大师

34%

还不是VIP/贵宾

-

TA的文库  其他...

Software

中英文Ebook

R学习

威望
2
论坛币
182633 个
通用积分
15207.3899
学术水平
208 点
热心指数
271 点
信用等级
174 点
经验
291465 点
帖子
5381
精华
1
在线时间
13483 小时
注册时间
2006-6-21
最后登录
2024-4-30

初级学术勋章 初级热心勋章 中级热心勋章 初级信用勋章

50论坛币
  1. %let vars=gender,1 2;
  2. %put &vars;
复制代码
如何先判断&vars是否含有逗号,如含有,将vars以逗号分隔符分为gender和1 2。谢谢!

关键词:vars ARS VaR Gender der 如何

本帖被以下文库推荐

沙发
zw612003 发表于 2013-12-15 22:55:08 |只看作者 |坛友微信交流群
%macro aaa(vars=);
%let i=1;
%do %until (%qscan(%superQ(vars), &i., %str(,))=);
        %let var=%qscan(%superQ(vars), &i, %str(,));
            %put &var.;
        %let i=%eval(&i+1);
%end;
%mend;
%aaa(vars=gender,1 2);

使用道具

藤椅
dxystata 发表于 2013-12-15 22:59:41 |只看作者 |坛友微信交流群
zw612003 发表于 2013-12-15 22:55
%macro aaa(vars=);
%let i=1;
%do %until (%qscan(%superQ(vars), &i., %str(,))=);
调用出错!

使用道具

板凳
farmman60 发表于 2013-12-16 02:04:34 |只看作者 |坛友微信交流群
%macro test (vars);
%if %index(&vars,%str(,))^=0 %then %do;
   %let i=1;
     %do %until (%scan(&vars,&i,%str(,))=);
           %let a=%scan(&vars,&i,%str(,));
           %put &a;
           %let i=%eval(&i+1);
     %end;
%end;
%else %put There is no comma in "&Vars";
%mend;

%test(%str(gender, 1 2))
%test(%str(gender 1 2))

使用道具

报纸
zw612003 发表于 2013-12-16 10:17:37 |只看作者 |坛友微信交流群
%macro aaa(vars=);
   %let j=1;
   %do %until (%qscan(%quote(&vars),&j,',')=);
      %let var=%qscan(%quote(&vars),&j,',');
          %put var&j. = &var;
          %let j=%eval(&j+1);
        %end;
%mend;
%aaa(vars=%quote(&vars.));

学习了%quote,%qscan,谢谢。

使用道具

地板
Eternal0601 发表于 2013-12-16 21:23:50 |只看作者 |坛友微信交流群
dxystata 发表于 2013-12-15 22:59
调用出错!
用%aaa(vars=%str(gender,1 2));

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-30 19:07