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.
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 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.