data aadhar ;
input aadhar $ 28.;
datalines ;
1727-8514-4648
;
run;
data mask;
set aadhar;
new=substr(aadhar,length(aadhar)-1,9)='xxxx';
run;
I want to mask the first 8 numbers
required output
xxxx-xxxx-4648
data aadhar ;
input aadhar $ 28.;
datalines ;
1727-8514-4648
;
run;
data mask;
set aadhar;
new=prxchange('s/\d+/xxxx/',2,aadhar);
run;
Will all values have the format of <4 digits><hyphen><4 digits><hyphen><4 digits>?
data aadhar ;
input aadhar $ 28.;
datalines ;
1727-8514-4648
;
run;
data mask;
set aadhar;
new=prxchange('s/\d+/xxxx/',2,aadhar);
run;
Hi
Sharp
Thank you for your solution I am not good at regular expressions
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.
Ready to level-up your skills? Choose your own adventure.