Hi PG, For the same situation, the code provided by you is working fanstastic using cats function. Just to have a better understing of the regular expression syntax, I am trying to write the same code without using cats function. libname xl Excel "&sasforum\datasets\diagnosis.xls" access=readonly;
data test3;
First = 'negative' ;
Second = 'for';
Third = 'malignancy' ;
prx = prxParse(cats("/(", First, ")\W+", Second, "(?:\W+\w+){0,5}\W+(", Third, ")\b/i"));
set xl.'test1$'n;
if prxMatch(prx, diagnosis) then do;
call prxPosn(prx, 1, firstPos);
call prxPosn(prx, 2, lastPos);
end;
drop prx;
run;
proc sql;
select * from test3;
quit; I am trying to replace the 3 red lines code with a single line code: prx = prxParse("/("negative")\W+", for, "(?:\W+\w+){0,5}\W+(" malignancy")\b/i")); Due to limited experience, I am doing some syntax error. Can you please help me. Regards, Deepak
... View more