SAS FUNCTION
SAS 9.1.3
Go to Documentation Home
HOME
Go to Book List
FUN_home
Go to Table of Contents
연구회
Go to Index
자료실
Go to Master Index
SAS  9.1.3
Go to Feedback page
MAIL
ANYALNUM
Go to previous page
Previous
Go to next page
Next
처음메뉴로

5. ANYALNUM



영어와 숫자가 있는 문자에 대한 문자열을 검색하여, 영어와 숫자 문자의 첫 번째 위치를 반환한다.
Category: 문자함수

문 법
인 수
참 고
예 제
함 수 비 교

문법

MAIN

ANYALNUM (string <,start>)  

Arguments

STRING
는 검색하기 위한 문자 표현을 지정한다..

START
는 검색 시작 위치와 검색 방향을 지정 지정.


참고

문자를 발견하지 못하면, 0을 반환한다.
  - 만약 start값이 양이면, 오른쪽으로 검색한다.
  - 만약 start값이 음이면, 왼쪽으로 검색한다.
  - 만약 start값이 문자열의 length보다 큰 음수값이라면, 문자열의 끝에서 왼쪽으로 검색한다.
  - 문자를 발견 못했거나, start값이 문자열의 길이보다 더 큰 경우에는 0값을 반환한다.

예제

MAIN

 

예 제 1 :

String 변수에서 영문자와 숫자만을 추출하자. do until을 사용하여 반복작업을 통하여, anyalnum 함수를 통하여 영어문자와 숫자문자의 첫 번째 위치를 찾은 후에 substr함수를 통하여 각 문자를 추출한다.

SAS Statements Results
data ANYALNUM1;
     string='Next = Last + 1;';
     j=0;
     do until(j=0);
        j = anyalnum(string,j+1);
        if j=0 then put +3 "That's all";
        else do;
          c = substr(string,j,1);
          put +3 j= c=;
        end;
     end;
run;
j=1 c=N
j=2 c=e
j=3 c=x
j=4 c=t
j=8 c=L
j=9 c=a
j=10 c=s
j=11 c=t
j=15 c=1
That's all
 

 예 제 2 : Anyalpha ,Anydigit, Anypunct, Anyspace변수를 비교하자.

    - Anyalpha : 알파벳이 존재하는 문자열의 첫 번째 위치를 반환한다.

                즉, anyalpha(test)이 0보다 큰 경우 test변수에 알파벳이 존재함을 알 수 있다.
    - Anydigit   : 숫자값이 존재하는 숫자열의 첫 번째 위치를 반환한다.

                 즉, anydigit(test)이 0보다 큰 경우 test변수에 숫자값이 존재함을 알 수 있다.
    - Anypunct : 구두문자가 존재하는 첫 번째 구두문자의 첫번째 위치를 반환한다.

                즉, anypunct(test)이 0보다 큰 경우 test변수에 구두문자가 존재함을 알 수 있다.

SAS Statements Results
DATA ANYALNUM2;
     INPUT TEST $5.;
     ALPHAS ='N'; DIGITS ='N';
     PUNCTUATION='N'; SPACE ='N';
     IF ANYALPHA(TEST) > 0 THEN ALPHAS = 'Y';
     IF ANYDIGIT(TEST) > 0 THEN DIGITS = 'Y';
     IF ANYPUNCT(TEST) > 0 THEN PUNCTUATION = 'Y';
     IF TRIM(ANYSPACE(TEST)) > 0 THEN SPACE = 'Y';
DATALINES;
12.34
ABCD
HELL0
4,231
;
 
test Alphas Digits Punctuation Space
12.34    N       Y         Y         N
abcd     Y       N         N         Y
HELL0    Y       Y         N         N
4,231    N       Y         Y         N


함수비교

Functions:

288.NOTALNUM


2006년 백승민 제작하였답니다. 
( http://cafe.daum.net/statsas )