본문 바로가기
SAS/SAS 함수

【SAS 함수】 303. NVALID

by 기서무나구물 2021. 10. 7.

포스팅 목차

    o NVALID

     


    SAS 변수 이름으로 사용가능한지 여부를 체크한다.

    Category: 문자함수(문자열처리함수)

     


    문 법


    NVALID
     (string<,validvarname>)


    Arguments

         string

              는 문자상수, 변수 표현을 지정.

     

         validvarname

    v7  문자열이 SAS 변수이름으로 유효한지 여부를 결정한다.- 변수가 영문자 또는 underscore로 시작한다.
     - SAS 변수의 모든 문자가 영문자,underscore,숫자로 구성된다.
     - 길이(length)가 32보다 작다.
    ANY  문자열 길이가 공백을 포함하여 32보다 작으면 유효하다고 결정한다.
    NLITERAL  문자열이 SAS name literal('name'N) 또는 validvarname=v7일때 유효하다고 결정한다.

     

     


    관련 함수

     함수명 함수내용
    CHAR Function Returns a single character from a specified position in a character string.
    CHOOSEC 인수 리스트에서 선택된 문자값을 반환한다.
    CHOOSEN 인수 리스트에서 선택된 숫자값을 반환한다.
    COALESCEC 문자인수 리스트에서 첫번째 non-missing값을 반환한다.
    COMPARE 두 문자 차이가 있는 것중 가장 왼편의 위치를 반환한다.
    COMPBL 문자열에서 다중 Blank를 한 개의 Blank로 변경한다.
    COMPRESS 문자열에서 사용자가 지정한 문자를 제거한다.
    FIRST Function Returns the first character in a character string.
    IFC 표현의 사실,거짓,missing인지 여부를 판단하여 해당 문자 형태의 값 반환한다.
    IFN 표현이 사실, 거짓, missing인지 여부를 판단하여 해당 수치형 값을 반환한다.
    INDEX 문자열에서 해당 문자열 단위로 위치를 검색하여 첫 번째 위치를 반환한다.
    INDEXC 문자열에서 해당문자 단위로 위치를 검색하여 첫 번째 위치를 반환한다.
    INDEXW 문자열에서 해당단어 단위로 위치 검색하여서 첫 번째 단어 위치를 반환한다. excerpt는 단어 앞뒤의 공백은 제거후 검색한다.
    LOWCASE 모든 문자를 소문자로 변환한다.
    NLITERAL SAS 변수명으로 유효하지 않는 문자열을 SAS name literal (n-literal)로 변경한다.
    MISSING 인수에 missing값 소유여부를 반환한다. missing값이 존재시 1의 값을 반환하고, 존재하지 않으면 0의 값을 반환한다.
    NVALID SAS 변수 이름으로 사용가능한지 여부를 체크한다.
    PROPCASE 모든 단어를 proper case 로 변경한다.
    REPEAT 문자변수, 문자를 n+1번 반복한다.
    REVERSE 문자열의 문자값 순서를 반대로 전환한다.
    RIGHT 문자열을 오른쪽으로 정렬한다.
    SCAN 문자열에서 지정한 n번째 단어를 추출한다.
    STRIP 앞뒤 Blank를 제거한 문자열을 반환한다.
    SUBPAD 만약 문자열에서 substr을 할 경우 문자열보다 더 큰 length를 주었을때, 공백문자를 삽입하여 반환한다.
    TRANSLATE 문자열중에서 지정된 문자를 지정한 문자로 변경한다.
    TRANSTRN Replaces or removes all occurrences of a substring in a character string.
    TRANWRD 문자열에서 지정된 문자열을 지정한 문자열로 변경한다.
    TRIM 문자열에서 문자열 뒤의 공백을(trailing blanks) 제거한다. 만약 문자열이 missing 일 경우에는 한 개의 공백을 반환한다.
    TRIMN 문자열에서 문자열 뒤의 공백을(trailing blanks) 제거한다. 만약 문자열이 missing일 경우에는 null값을 반환한다.
    UPCASE 모든 문자를 대문자로 변환한다.
    VERIFY 주어진 문자열과 대상문자열을 비교하여 존재하지 않는 문자의 첫 번째 위치를 반환한다.

     


    예 제

    지정한 문자열이 SAS변수 이름으로 유효한지 여부를 결정한다.

    SAS Statements
    options validvarname=v7 ls=64;
    
    data string;
         input string $char40.;
         v7       = nvalid(string,'v7');
         any      = nvalid(string,'any');
         nliteral = nvalid(string,'nliteral');
         default  = nvalid(string);
    datalines;
    Tooooooooooooooooooooooooooo
    
    Long
    OK
    Very_Long_But_Still_OK_for_V7
    1st_char_is_a_digit
    Embedded blank
    !@#$%^&*
    "Very Loooong N-Literal with """N
    'No closing quotation mark
    ;

     

    Results
    string                             v7 any nliteral default
    Tooooooooooooooooooooooooooo Long  0  0      0       0
                                       0  0      0       0
    OK                                 1  1      1       1
    Very_Long_But_Still_OK_for_V7      1  1      1       1
    1st_char_is_a_digit                0  1      1       0
    Embedded blank                     0  1      1       0
    !@#$%^&*                           0  1      1       0
    "Very Loooong N-Literal with """N  0  0      1       0
    'No closing quotation mark         0  1      0       0

     


    SAS 함수(SAS Function) 리스트 링크

     

    엑셀(EXCEL)과 SAS 함수(SAS Function) 비교 리스트 링크

     

    SAS 데이터 스텝 구문 리스트(SAS Data Step Statement)
    반응형

    'SAS > SAS 함수' 카테고리의 다른 글

    【SAS 함수】 305. ORDINAL  (0) 2021.10.07
    【SAS 함수】 304. OPEN  (0) 2021.10.07
    【SAS 함수】 302. NPV  (0) 2021.10.07
    【SAS 함수】 301. NOTXDIGIT  (0) 2021.10.07
    【SAS 함수】 300. NOTUPPER  (0) 2021.10.07

    댓글