📜  SAS |带有示例的 COMPRESS函数

📅  最后修改于: 2022-05-13 01:55:25.199000             🧑  作者: Mango

SAS |带有示例的 COMPRESS函数

COMPRESS函数主要用于压缩/删除字符中的所有空格/字符串。换句话说,它从字符串中删除前导、中间和尾随空格。

COMPRESS函数允许空参数。空参数被视为长度为零的字符串。

例子:

Input: " Geeks For Geeks "
Output: "Geeksforgeeks"

Input: null
Output: null

句法:

COMPRESS(String, characters to be removed, Modifier)

程序:

  • 样本数据集
    Data char;
    Input Name $ 1-50 ;
    Cards;
    Geeks   for Geeks
    GeeksforGeeks
    Ge   eks for  Geeks
    Geeks f   or  Geeks
    ;
    Run;
    

    样本数据输出:

  • 对上面定义的样本数据使用 COMPRESS函数:
    Data char1;
    Set char;
    char1 = compress(Name);
    run;
    

    输出

  • 删除特定字符

    在 SAS 中,称为MODIFIER的附加参数已添加到函数中。

    以下关键字可用作修饰符-

    • a – 从字符串中删除所有大写和小写字符。
    • ak – 只保留字符串中的字母。
    • kd – 只保留数值
    • d – 从字符串中删除数值。
    • i – 从字符串中删除指定的大小写字符。
    • k – 保留字符串中的指定字符而不是删除它们。
    • l – 从字符串中删除小写字符。
    • p - 从字符中删除标点符号。
    • s - 从字符串中删除空格。这是默认设置。
    • u - 从字符串中删除大写字符。

      例子:

    • 示例 1:压缩小写字母
      data _null_;
         x='456-123-852 A 123-8910 c';
         y=compress(x, 'ABCD', 'l');
         put string=;
      run;
      

      输出

      string= 456-123-852 123-8910
    • 示例 2:压缩空格字符
      data one;
         x='1 9 3 4 5 6 8';
         y=compress(x,, 's');
         put string=;
      run;
      

      输出

      string= 1934568
    • 示例 3:将字符保留在列表中
      data one;
         x='Chemistry A Maths B Physics C';
         y=compress(x, 'ABCD', 'k');
         put string=;
      run;
      

      输出

      string= ABC
    • 示例 4:压缩字符串并返回长度为 0
      data _null_;
         x='';
         len=lengthn(compress(x));
         put len=;
      run;
      

      输出

      len= 0