BookmarkSubscribeRSS Feed
sarkar_kanchan
Calcite | Level 5

Hi All,

Please help me to find out the solution for this ...

Comment is my variable ... i would like to extract only the Digit from the comment .For example  from the first line i need to extract 150 and from the second i want to extract 100 and so on .I tried with anydigit option but its not working as it only show 1 or 0 if there is any digit in the below comment.My date set large and have more than 10000 comments like this .

43534-PP - ABCDEF 150 ABC ABCD

07052-TT - ABCD 100 ABCDEFG

83092-DD -   ABCDEFG  540 ABCDEFRGTH

Regards

kanchan

4 REPLIES 4
Haikuo
Onyx | Level 15

This seems working on your as-is data:

DATA TEST;

     INFILE CARDS TRUNCOVER;

     INPUT VAR $100.;

     DIGITS=prxchange('s/^\d+\D+|\D+$//o',-1,var);

     CARDS;

43534-PP - ABCDEF 150 ABC ABCD

07052-TT - ABCD 100 ABCDEFG

83092-DD -   ABCDEFG 540 ABCDEFRGTH

;

Haikuo

RW9
Diamond | Level 26 RW9
Diamond | Level 26

Or just use scan, nice one xia keshan.

Alternatively, without perl:

data test;

  infile cards truncover;

  input var $100.;

  digits=compress(scan(var,3,'-'),' ','a');

cards;

43534-PP - ABCDEF 150 ABC ABCD

07052-TT - ABCD 100 ABCDEFG

83092-DD -   ABCDEFG 540 ABCDEFRGTH

;

run;

Ksharp
Super User

DATA TEST;

     INFILE CARDS TRUNCOVER;

     INPUT VAR $100.;

     DIGITS=scan(var,2,,'kd');

     CARDS;

43534-PP - ABCDEF 150 ABC ABCD

07052-TT - ABCD 100 ABCDEFG

83092-DD -   ABCDEFG 540 ABCDEFRGTH

;

run;

Xia Keshan

Haikuo
Onyx | Level 15

Nice. Never see 'kd' option in SCAN(). Thanks for sharing!

Well in this case, depending on OP's rules, DIGITS=scan(var,-1,,'kd'); will also be OK.

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 4 replies
  • 1306 views
  • 1 like
  • 4 in conversation