如何从sas中的字符串中删除特殊字符


从 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;
  setdata1 ;
  new_name= compress (name, , ' kas ');
run ;

/*view dataset*/
proc print data =data2; 

请注意, new_name列包含name列中删除了特殊字符的值。

以下正是COMPRESS函数删除这些特殊字符的操作:

  • k指定我们要“保留”某些字符
  • a指定保留字母字符
  • s指定保留空白字符

注意:您可以在此SAS 文档页面上找到COMPRESS函数的修饰符的完整列表。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

SAS中如何从字符串中提取数字
SAS中SUBSTR函数的使用方法
如何在 SAS 中将字符串转换为大写、小写和正确大小写

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注