If you want very five rows to be a observation, then would be easy.
[pre]
data temp(drop=_: position length);
infile datalines truncover;
input #1 name $100.
#2 address $100.
#3 _city $100.
#4 areacode : $10. phone : $20.
#5 _star $100.;
city=scan(_city,1,',');
st=scan(_city,-2,', ');
zip=scan(_city,-1,', ');
star=catx(' ',scan(_star,1),scan(_star,2));
call scan(_star,3,position,length);
focus=substr(_star,position);
datalines;
Generic College
1234 Main St
New York, NY 12345
718 555-1234
One Star Liberal Arts
Another Generic College
567 Main St
Boston, MA 23456
617 555-5678
Three Star Engineering
;
run;
[/pre]
Ksharp