data work.systems; set work.carsales; if prxmatch('m/Acura|Dodge|Ford/oi',Manufacturer) > 0 then found=1; else found=0; run;
I've tried to run above code and in result I got a new dataset with found=0 only... as I want to do pattern matching so prxmatch should be there..
thanks:)
Post test data in the form of a datastep, we can't see your data!
I don't have access to your source data, but when I run
data work.systems;
set sashelp.cars;
if prxmatch('m/Acura|Quattro|Ford/oi',model) > 0
then found=1;
else found=0;
run;
it works fine.
If you want to get fast accurrate solutions, posting the data you're using is recommended. It's fortunate there's a similar dataset in sashelp.
hey thanks for reply...actually im using bit old sas version i.e SAS 9.0... so does this makes any impact while running the code? @LaurieF
here is the dataset which im using for this code @LaurieF
These are the modifier which work in 9.1,
https://support.sas.com/rnd/base/datastep/perl_regexp/regexp-tip-sheet.pdf
Sorry, 9.0 is so antiquated they had to have documentatioon on stone tablets. Seriously, upgrade there is no benefit to staying on an old version.
I'm with @RW9 - upgrade, if you're in the position to do it. If you can't, stick with multiple index or indexw calls, which will work fine.
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.