Solved
Contributor
Posts: 45

# Need help in Do loop incremented by delimiter

Hello,

I have a delimited raw data file .

Now I want to create a SAS dataset using the raw data file using Do loop as there are variable number of records and variable length fileds.

How to increment it in Do loop.

Input :

A   1*2*3*4*5

B   5*6*7

C   1*45*78*54

Desired Output:

A     1

A     2

A     3

A     4

A     5

B     5

B     6

B     7

C     1

C     45

C     78

C     54

I am not getting how to increment the DO loop with delimiter value.....

Thanks....

Accepted Solutions
Solution
‎10-14-2014 08:16 AM
Super User
Posts: 10,784

## Re: Need help in Do loop incremented by delimiter

```data have;
infile cards dlm=' *' truncover;
input id \$ v \$ @;
do until(missing(v));
output;
input v \$ @;
end;
cards;
A   1*2*3*4*5
B   5*6*7
C   1*45*78*54
;
run;
```

Xia Keshan

All Replies
Super User
Posts: 5,881

## Re: Need help in Do loop incremented by delimiter

Use scan(var,n,'*') together with a do until loop.

Data never sleeps
Contributor
Posts: 45

## Re: Need help in Do loop incremented by delimiter

Can you please let me know how to write that if my delimiter is Hex Value ('41'x) instead of '*'        ?

SAS Employee
Posts: 340

## Re: Need help in Do loop incremented by delimiter

scan(var,n,'41'x)

Solution
‎10-14-2014 08:16 AM
Super User
Posts: 10,784

## Re: Need help in Do loop incremented by delimiter

```data have;
infile cards dlm=' *' truncover;
input id \$ v \$ @;
do until(missing(v));
output;
input v \$ @;
end;
cards;
A   1*2*3*4*5
B   5*6*7
C   1*45*78*54
;
run;
```

Xia Keshan

Contributor
Posts: 45

## Re: Need help in Do loop incremented by delimiter

Thank you all.... :-)

🔒 This topic is solved and locked.