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;

При запуске приведенного выше кода мы получаем вывод, который показывает имена переменных и их значения.

Строковые функции

Ниже приведены примеры некоторых часто используемых функций SAS.

SUBSTRN

Эта функция извлекает подстроку, используя начальную и конечную позиции. Если конечная позиция не указана, извлекаются все символы до конца строки.

Синтаксис

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.

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.