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

Dear member,

 

Could you please help me in below query:

input

Data  one;

input all $50. ;

datalines; 

ram is "amazing"

shyan needs "/books/lamps"

we are "/travellling/"

;

run;

 

 I need output dataset New having values like this  in a new variable two.

 

two

amazing

/books/lamps

  /travellling/

 

   

 

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20

Hmm No wonder not participating here enough makes me lose touch consequential in not thinking of the following in the 1st place. Jeez!--

 


Data  one;

input all $50. ;

datalines; 
ram is "amazing"
shyan needs "/books/lamps"
we are "/travellling/"
;

run;


data two;
  set one;
  length want $50;
  want=scan(all,-2,'"');
run;

proc print noobs;run;
all want
ram is "amazing" amazing
shyan needs "/books/lamps" /books/lamps
we are "/travellling/" /travellling/

View solution in original post

4 REPLIES 4
novinosrin
Tourmaline | Level 20

Data  one;

input all $50. ;

datalines; 
ram is "amazing"
shyan needs "/books/lamps"
we are "/travellling/"
;

run;

data two;
  set one;
  length want $50;
  _k=findc(all,'"','b');
  _k1=findc(all,'"')+1;
  want=substr(all,_k1, _k-_k1);
  drop _k:;
run;

proc print noobs;run;
all want
ram is "amazing" amazing
shyan needs "/books/lamps" /books/lamps
we are "/travellling/" /travellling/
novinosrin
Tourmaline | Level 20

Hmm No wonder not participating here enough makes me lose touch consequential in not thinking of the following in the 1st place. Jeez!--

 


Data  one;

input all $50. ;

datalines; 
ram is "amazing"
shyan needs "/books/lamps"
we are "/travellling/"
;

run;


data two;
  set one;
  length want $50;
  want=scan(all,-2,'"');
run;

proc print noobs;run;
all want
ram is "amazing" amazing
shyan needs "/books/lamps" /books/lamps
we are "/travellling/" /travellling/
ballardw
Super User

@novinosrin wrote:

Hmm No wonder not participating here enough makes me lose touch consequential in not thinking of the following in the 1st place. Jeez!--

 


Data  one;

input all $50. ;

datalines; 
ram is "amazing"
shyan needs "/books/lamps"
we are "/travellling/"
;

run;


data two;
  set one;
  length want $50;
  want=scan(all,-2,'"');
run;

proc print noobs;run;
all want
ram is "amazing" amazing
shyan needs "/books/lamps" /books/lamps
we are "/travellling/" /travellling/

Maybe we need a self-assigned badge of the "Forehead pop" for such.

ChrisNZ
Tourmaline | Level 20

Like this?

WANT=scan(ALL, 2, '"');

 

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
  • 4 replies
  • 1362 views
  • 5 likes
  • 4 in conversation