BookmarkSubscribeRSS Feed
Saikiran_Mamidi
Obsidian | Level 7

Interview Question to my friend.

 

x=A,B,C,D,E,F,G ;

He wants  to find 4th  comma or 5th comma.

 

I have given this answer.

data a;
x='A,B,C,D,E,F';
run;
%let p=9;
data find_comma;
set a;
fouth_comma=find(x,',',&p);
run;

Is it correct? or wrong?

Interview asked me to write dynamically. 

Please correct if I'm  wrong.

They want dynamically?

3 REPLIES 3
Ksharp
Super User
data _null_;
x='A,B,C,D,E,F';

n=4;
call scan(x,n,p,l,',');
position=p+l ;
putlog 'n=' n 'position=' position;


n=5;
call scan(x,n,p,l,',');
position=p+l ;
putlog 'n=' n 'position=' position;

run;
gamotte
Rhodochrosite | Level 12

Hello,

 

data _null_;
    x='A,B,C,D,E,F';

    do n=4, 5;
        position=length(prxchange(cats('s/^(([^,]*,){',n,'}).*$/$1/'),1,x));
        put n= position=;
    end;
run;

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 853 views
  • 1 like
  • 4 in conversation