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

Hi all,

 

I posted a similar question before only to realize the need was different that what I originally thought. I have a string with an ID that I need to extract. There are varying lengths of characters on either side of this ID making it difficult for me to specify the location to work from. I have noticed that there are always seven underscores before the the ID is found, but I'm not sure if that helps at all with locating the ID. Not sure if there's some sort of SUBSTR function that could be used for this in proc sql.

 

Here's an example of the data from my table named "tracking" with the ID that I need in bold: 

 

hraccact_email_acquisition_NA_ENG_20170222_gpsubscrip_HIL17TRANSS10EN1T33_A-509469751O

hrmessage_email_announcenews_NA_ENG_20170302_hrsubscrip_H0042100144510381EN_A-533270247X

hresum_email_HSUM0117_AS_ENG_20170124_stspecial_H0040055123110381EN_A-532246836EN?stop_mobi=yes

 

Thanks for any help!

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
1 REPLY 1
Tom
Super User Tom
Super User

Did you try the SCAN() function?

scan(string,8,'_')

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

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

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
  • 1 reply
  • 1312 views
  • 1 like
  • 2 in conversation