在SAS中删除字符串中的特殊字符的最简单方法是使用带有 "kas "修饰符的COMPRESS函数。
这个函数使用以下基本语法:
data new_data;
set original_data;
remove_specials = compress(some_string, , 'kas');
run;
下面的例子显示了如何在实践中使用这种语法。
例子:在SAS中删除字符串中的特殊字符
假设我们在SAS中拥有以下数据集,其中包含不同员工的名字和他们的总销售额:
/*create dataset*/
data data1;
input name $ sales;
datalines;
Bob&%^ 45
M&$#@ike 50
Randy)) 39
Chad!? 14
Dan** 29
R[on] 44
;
run;
/*view dataset*/
proc print data=data1;

请注意,姓名栏中的数值包含了几个特殊字符。
我们可以使用COMPRESS函数来删除这些特殊字符。
/*create second dataset with special characters removed from names*/
data data2;
set data1;
new_name=compress(name, , 'kas');
run;
/*view dataset*/
proc print data=data2;

请注意,new_name列包含了name列中的值,并删除了特殊字符。
下面就是COMPRESS函数删除这些特殊字符的具体操作。
- k指定我们要 "保留 "某些字符
- a指定保留字母类的字符
- s指定保留空格字符
注意:你可以在这个SAS文档页面上找到COMPRESS函数的完整修改器列表。