Hi,
In the compress, 'L' modifer adds lowercase letters to the list of characters to be kept or removed, but in the code below the output removes all characters ABCD?
data test;
x='123-4567-8901 B 234-5678-9012 c';
y=compress(x, 'ABCD', 'L');
proc print;
run;
Any suggestion?
SK
That's because you've asked COMPRESS to remove the letters 'ABCD' (the second argument) AND the third argument ('L') instructs SAS to remove all lowercase letters.
So . . . all of the letters A, B, C, and D are removed as you requested. And, all lowercase letters are removed as you requested.
The result is the series of numbers, with the sample string you used.
That's because you've asked COMPRESS to remove the letters 'ABCD' (the second argument) AND the third argument ('L') instructs SAS to remove all lowercase letters.
So . . . all of the letters A, B, C, and D are removed as you requested. And, all lowercase letters are removed as you requested.
The result is the series of numbers, with the sample string you used.
As per the code, in the compress function used compress(x, 'ABCD', 'L'), we are suggesting compress to remove "ABCD" and any lower case letters, so even though the ABCD are all in caps, since we have mentioned them in compress function they are getting removed,
in case you wish to remove only the lower case letters then try
compress(x,, 'L'), this will remove only the lower case letters
the output will be
123-4567-8901 B 234-5678-9012
/*code*/
data test;
x='123-4567-8901 B 234-5678-9012 c';
y=compress(x,,'L');
proc print;
run;
Thanks,
Jagadish
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.