SAS在变量中保留空白

时间:2014-03-28 22:21:26

标签: string sas

我有1个观察数据集,

信息长度为100美元

 information
  Susan
 Peter
 Johny 

如果我想要子串6

X = SUBSTR(信息,1,6)

我需要lefts和right blanks,因为我会将它与其他字符串连接起来,

示例:

    stringConcat1 SusanStringConcat2
    stringConcat1Peter StringConcat2
    stringConcat1Jonhny StringConcat2

我知道如果我有一个长度的观察它填充空白但是当我使用循环时这个长度可以变化,我该怎么办呢?因为SAS修剪了空白

我尝试了功能子键盘(信息,1,6),但结果相同。

1 个答案:

答案 0 :(得分:0)

如果将变量连接在一起是您的目标,这里有一些使用CAT函数的代码可能会帮助您入门

data have;
 Length Var $20;
 Input Var $;
 datalines;
information
Susan
Peter
Johny 
;

Data need;
 Length Concat $5000;
 Retain Concat;
 Set have end=last;

 if _n_=1 then Concat=strip(Var);
 else  Concat=cat(strip(concat),", ",strip(var));

 if last then do;
  put Concat=;
  call symputx('Concat',concat);
 end;
Run;
%Put CONCAT: &concat;