BookmarkSubscribeRSS Feed
GeorgeSAS
Lapis Lazuli | Level 10

Hello everyone,

If i want keep name start with 'D'. the code below works,but how if I want keep the name end with "y"?or second letter is "o"? Is there any similar operator like "=: "to do this in data step?(data step only)

data test;

  input name $;

  cards;

  John

  Diana

  Diane

  Sally

  Doug

  David

  ;

  run;

  data test;

  set test;

  if name =: 'D';

  run;

  proc print;

  run;

Thanks

4 REPLIES 4
data_null__
Jade | Level 19
data test;
   set test;
   if name =: 'D' or char(name,2) eq 'o' or char(name,length(name)) eq 'y';
  
run;
Babloo
Rhodochrosite | Level 12

data test;

  input name $;

  cards;

  John

  Diana

  Diane

  Sally

  Doug

  David

   ;

  run;

  proc sql;

create table want as select * from test where name like  '%y' or  name like '%o%' ;

quit;

  

  proc print;

  run;

Ksharp
Super User
data test;
  input name $;
  cards;
  John
  Diana
  Diane
  Sally
  Doug
  David
  ;
  run;
  data want;
   set test;
   if prxmatch('/^D|^[a-z]o|y$/i',strip(name));
run;

Xia Keshan

Message was edited by: xia keshan

Jagadishkatam
Amethyst | Level 16
data test;
   set test;

  if substr(compress(lowcase(name)),2,1)='o' or                substr(compress(lowcase(name)),length(name),1)='y' or

     substr(compress(lowcase(name)),1,1)='d' ;

run;

Thanks,
Jag

Thanks,
Jag
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
  • 1521 views
  • 0 likes
  • 5 in conversation