Hi
I need to know how to create a substring please.
The value I have is
428552LCOR42
But I need to remove the 'LC' (7&8) to show as below, any ideas please?
428552OR42
Hello,
data _null_;
a='428552LCOR42';
b=compress(a,'LC');
put b=;
run;
Or: b=tranwrd(a,'LC','');
Not knowing how dynamic you need the substring to be when removing it, but if there is just one instance of "LC" in your field value, and that's all you are looking to remove, I would suggest the compress() function.
newvar=strip(compress(oldvar,"LC"));
This will eliminate any "L" or "C" in your original variable, and remove any leading or trailing blanks with the strip() function.
Hope this helps!
If you want to remove only L&C in the String the following code will help.
data Sample;
Have='428552LCOR42';
Want=compress(Have,'LC');
run;
IF you want to remove the 7th and 8th characters from the entire variable then
data Want;
set Have;
wantVar=strip(substr(haveVar,1,6)||substr(haveVar,9));
run;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.