SAS - 字符串


SAS 中的字符串是用一对单引号括起来的值。此外,字符串变量是通过在变量声明末尾添加空格和 $ 符号来声明的。SAS 具有许多强大的函数来分析和操作字符串。

声明字符串变量

我们可以声明字符串变量及其值,如下所示。在下面的代码中,我们声明了两个长度为 6 和 5 的字符变量。 LENGTH 关键字用于声明变量而不创建多个观察值。

data string_examples;
   LENGTH string1 $ 6 String2 $ 5;
   /*String variables of length 6 and 5 */
   String1 = 'Hello';
   String2 = 'World';
   Joined_strings =  String1 ||String2 ;
run;
proc print data = string_examples noobs;
run;

运行上面的代码时,我们得到显示变量名称及其值的输出。

strings_1_concatenate

字符串函数

以下是一些经常使用的 SAS 函数的示例。

子集

该函数使用开始和结束位置提取子字符串。如果没有提到结束位置,它将提取直到字符串末尾的所有字符。

句法

SUBSTRN('stringval',p1,p2)

以下是所使用参数的描述 -

  • stringval是字符串变量的值。
  • p1是提取的起始位置。
  • p2是提取的最终位置。

例子

data string_examples;
   LENGTH string1 $ 6 ;
   String1 = 'Hello';
   sub_string1 = substrn(String1,2,4) ;
   /*Extract from position 2 to 4 */
   sub_string2 = substrn(String1,3) ;
   /*Extract from position 3 onwards */
run;
proc print data = string_examples noobs;
run;

运行上面的代码后,我们得到的输出显示了 substrn 函数的结果。

strings_2_substr

TRIMN

此函数删除字符串中的尾随空格。

句法

TRIMN('stringval')

以下是所使用参数的描述 -

  • stringval是字符串变量的值。
data string_examples;
   LENGTH string1 $ 7  ;
   String1='Hello  ';
   length_string1 = lengthc(String1);
   length_trimmed_string = lengthc(TRIMN(String1));
run;
proc print data = string_examples noobs;
run;

运行上面的代码后,我们得到的输出显示了 TRIMN 函数的结果。

strings_3_trimn