|
|
sas9正则表达式测试(对字符串进行字符替换) |
|
|
作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站 |
sas9正则表达式测试(对字符串进行字符替换)
测试案例如下: 1、没有使用正则表达式进行字符串替换 data _null_; length a b $20000; do i=1 to 500; a="dsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssssssssssssssssssssssssssss"; b=tranwrd(a,"s","w"); end; put a= b=; run; 运算结果为: NOTE: “DATA 语句”所用时间(总处理时间): 实际时间 0.47 秒 CPU 时间 0.47 秒
2、使用正则表达式进行字符串替换 data _null_; length a b $20000; gt_re = prxparse('s/s/w/'); do i=1 to 500; a="dsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssdsfdsssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssssssssssssssssssssssssssss"; b=a; call prxchange(gt_re, -1, b); end; put a= b=; run; 运算结果为: NOTE: “DATA 语句”所用时间(总处理时间): 实际时间 45.71 秒 CPU 时间 43.91 秒
经测试,可见2者的运行时间相差很大,不是一个级别 故建议在运行速度要求较高的程序中最好不要使用正则表达式
|
|
相关文章:相关软件: |
|