data test;
x1=2;
x2=34;
x3=90;
x4=60;
x78=890;
x100=222;
x=100;
y="haha";
run;
%let dsname=test;
data _null_;
if 0 then set &dsname;
array vars x1--x100;
call execute("proc datasets lib=work; modify &dsname; rename ");
do over vars;
newname=cats(compress(vname(vars),"","d"),compress(vname(vars),"_","a")-1);
code=catx("=",vname(vars),newname);
call execute(code);
end;
call execute("; run; quit;");
run;