BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.

I'm trying to see if a string that is returned by a scan function can be checked for in a list of strings as such:

 

if scan(CAG_code,3,"$") in("5234E","4321B","4456C")  --> this is throwing a syntax error

 

an example of what CAG_code looks like is: 2286$2983$4456C

1 ACCEPTED SOLUTION

Accepted Solutions
ballardw
Super User

No error with this:

data junk;
   CAG_code= '2286$2983$4456C';
   if scan(CAG_code,3,"$") in("5234E","4321B","4456C") then put 'Found';
run;

Log and error message please.

 

 

My $0.02 guess: error on previous line such as missing ;

View solution in original post

3 REPLIES 3
LinusH
Tourmaline | Level 20
Show the log...
Data never sleeps
ballardw
Super User

No error with this:

data junk;
   CAG_code= '2286$2983$4456C';
   if scan(CAG_code,3,"$") in("5234E","4321B","4456C") then put 'Found';
run;

Log and error message please.

 

 

My $0.02 guess: error on previous line such as missing ;

JediApprentice
Pyrite | Level 9

Yes, you were right! I was simply missing a semicolon.

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
  • 1556 views
  • 1 like
  • 3 in conversation