Hi,
I want to get all the observations where first name starts with Ro, Ay, Su OR Last name starts with Che, Ro.
I know it's possible to code with Where, IF etc, but can someone help with the coding with Perl, please. Thanks.
data have;
infile datalines;
input id First_name$8. Last_name&$8.;
datalines;
101 Roy Rose
102 Yao Chen
103 Sushan Hash
104 Robin Blue
105 Susan Robert
106 Susan Jane
107 Ayesha Hasan
;
run;
data have;
infile datalines;
input id First_name$8. Last_name&$8.;
datalines;
101 Roy Rose
102 Yao Chen
103 Sushan Hash
104 Robin Blue
105 Susan Robert
106 Susan Jane
107 Ayesha Hasan
;
run;
data want;
set have;
where prxmatch('/^(Ro|Ay|Su).*/i',First_name) or
prxmatch('/^(Che|Ro).*/i',Last_name);
run;
data have;
infile datalines;
input id First_name$8. Last_name&$8.;
datalines;
101 Roy Rose
102 Yao Chen
103 Sushan Hash
104 Robin Blue
105 Susan Robert
106 Susan Jane
107 Ayesha Hasan
;
run;
data want;
set have;
where prxmatch('/^(Ro|Ay|Su).*/i',First_name) or
prxmatch('/^(Che|Ro).*/i',Last_name);
run;
I believe most Stalwarts would still think the following is better, faster and convenient
data have;
infile datalines;
input id First_name$8. Last_name&$8.;
datalines;
101 Roy Rose
102 Yao Chen
103 Sushan Hash
104 Robin Blue
105 Susan Robert
106 Susan Jane
107 Ayesha Hasan
;
run;
data want;
set have;
where First_name in :('Ro','Ay','Su') or
last_name in :('Che','Ro');
run;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.