简单Perl正则表达式SAS



我正在做一些RTF代码生成。我正在使用以下代码,工作正常,但我在PRX函数不太好。

有没有办法简化我的代码?

代码:

data _null_;
   length tmptxt $100.;
   tmptxt="ab Refer $crossref(Table 1) and $italic.Section $crossref(3.1)$enditalic";
   tmptxt=prxchange('s/([\{}])/\$1/',-1,tmptxt);
   tmptxt= prxchange('s/([$][a-zA-Z]+)([(])/%$1$2/',-1,tmptxt);
   tmptxt=prxchange('s/%$/%/',-1,tmptxt);
   tmptxt=prxchange('s/([$][a-zA-Z]+)/&$1$2/',-1,tmptxt);
   tmptxt=prxchange('s/&$/&/',-1,tmptxt);
   put tmptxt;
run;

提前感谢。拉贾拉姆

不完全是。可能是对正则表达式的一些小改进,但它不会有明显的影响。

最新更新