首页 > 解决方案 > SAS ...有一个包含两行数据的字符串,试图只获取第二行

问题描述

我有来自另一个数据库的一团数据,这些数据已导入 SAS。数据块有多行以标签开头。我可以编写一段代码来查找每个标签并将它们附加到表格列中。问题是,其中一个标签有多行数据(由回车/换行分隔),我不关心第一行。我只希望将第二行数据添加到表列(下面的示例:NADR:)。有人能告诉我如何修改这行代码只查找第二行吗?

例子:

:NADR:SE12345

高级自动

:DF1:10/7/2018

代码:

案例当 find(t1.Blob,":NADR:") > 0 然后 Strip(Substr(Substr(t1.Blob,find(t1.Blob,":NADR:")+6,300), 1, find(Substr(t1 .Blob,find(t1.Blob,":NADR:")+6,300),":")-1)) 以名称结尾

谢谢你。

标签: splitsas

解决方案


也许您可以单独导入每一行,然后删除带有您不想要的标签的行。例如:

if find(t1.Blob,":NADR:") > 0 then delete;

而与“高级汽车”的行是它自己的记录。除非您的数据结构的其他内容不允许这样做。


推荐阅读