data aaa1;
set aaa;
pa_s=find(pageid,'(');
pa_e=find(pageid,')');
if pa_s ne 0 then order=input(substr(pageid,pa_s+1,pa_e-pa_s-1),best.);
else order=0;
drop pa_s pa_e;
run;
proc sort data=aaa1;
where x ne .;
by no visit zb order;
run;
data wanted;
set aaa1;
by no visit zb order;
if last.zb;
drop order;
run;