COMPRESS 函数



COMPRESS 函数搜索

【功能】从一个字符串移除特定的字符

Syntax

1
compress (<source, chars><, modifiers>)

source: 指定一个字符串来源
chars: 指定要删除或者保留的字符列表,需用引号
modifiers: 指定修饰符,不区分大小写,用来控制 compress 函数的具体功能。如:

  a 增加(A - Z, a - z)到初始字符里(chars)。

  d 增加数字到初始字符里(chars)。

  f 增加下划线和字母(A - Z, a - z)到初始字符里(chars)。

  g 增加图形字符到初始字符里(chars)。

  k 不移除初始字符(chars)而是返回这些字符。

  l 增加小写字母(a - z)。

  n 增加数字、下划线和字母(A - Z, a - z)。

  p 增加标点符号。

  s 增加空格,包括空格、水平制表符、垂直制表符、回车符、换行符和换页符。

  t 剪掉尾部空格。

  u 增加大写字母(A - Z)。

  w 增加可印刷的字符。

  X 增加十六进制字符

  【详细】

        1.只有source,移除空格。

  2.只有source,chars时,从source中移除chars。

  3. source ,chars,modifiers都有时,modifiers K决定保留还是移除。无K时,移除chars加上modifiers指定的。例如这两都是移除数字,COMPRESS(source, “1234567890”);COMPRESS(source,, “d”);这两个是移除数字和加减号,COMPRESS(source, “1234567890+-”);COMPRESS(source, “+-”, “d”);

Example 1移除空格  

1
2
3
4
5
data _null_;
  a= 'ABC D '
  b=compress(a);
  put b;
  run;

  结果是ABCD。

Example 2:移除小写字母 

将修饰符设定为”l”,代表 lowcase,即将所有的小写字母加入到要删除的字符列表中;如不用修饰符”l”,也可以直接把所有a-z的小写字母列入要删除的字符串列表当中,效果一样,但显然前者比较简单;本例可以将所有小写字母和大写的”E”从指定的字符串中删除。

1
2
3
4
5
6
7
8
data test; 
set have; 
char1=compress(char, "E" , "l" ); 
run; 
data test; 
set have; 
char1=compress(char, "abcdefghijklmnopqrstuvwxyzE" ); 
run;


Example 3:移除Tab  

1
2
3
4
5
6
7
8
9
data _null_;
  x= '1
  2
  3
  4
  5'
  y=compress(x,, 's' );
  put y;
  run;

  结果是12345。

  Example 4:保存字符  

1
2
3
4
5
data _null_;
  x= 'Math A English B Physics A'
  y=compress(x, 'ABCD' 'k' );
  put y;
  run;

  结果是ABA.



Reference:

http://blog.sina.com.cn/s/blog_49040b720100qbv4.html

http://tj.100xuexi.com/ExtendItem/OTDetail.aspx?id=55DCE428-12F0-4DF6-8270-F1148A367F7E

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值