如何在SAS中删除字符串中的特殊字符(附代码实例)

1,589 阅读1分钟

在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函数的完整修改器列表。