sas,删除逗号和句点,正则表达式

时间:2018-10-15 17:23:06

标签: regex sas

你们知道如何用这样的方式删除逗号和句点:

'18430109646000104331929350001,064380958490001,974317618110001,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. '

我必须连接起来才能获得索赔编号列表(带有前导零)。现在,我有了该字符串,但是我想最后删除所有内容。我试过了,但是没有用

data OUT.REQ_1_4_25 ;
   set OUT.REQ_1_4_24;
   CONCAT1=PRXCHANGE('s/,.//',1,CONCAT);
run; 

顺便说一句,我正在使用SAS和regex,类似于prxchange。

3 个答案:

答案 0 :(得分:1)

这对我也有用

    data OUT.REQ_1_4_25 ;
   set OUT.REQ_1_4_24;
   CONCAT1=TRANWRD(CONCAT, ',.', ''); 

run;

答案 1 :(得分:0)

除非您有比实际显示的要复杂的东西,否则不需要正则表达式。

只需使用$npm install --dev gulp gulp-sass gulp-autoprefixer $npm audit fix 函数,并告诉它使用scan().作为分隔符:

,

答案 2 :(得分:0)

PRXCHANGE函数的第二个参数指定应执行搜索和替换的次数。将-1替换为-1会将替换操作运行到字符串的末尾,而不是一次。

另外,对',。将替换逗号后跟任何字符(“。”是通配符)。您想使用逗号(',')或句点('。'),而最后一个是您需要使用'\'进行转义的元字符:

CONCAT1=PRXCHANGE('s/[,\.]//',-1,CONCAT);

如果只想删除逗号对,请删除方括号:

CONCAT1=PRXCHANGE('s/,\.//',-1,CONCAT);