포스팅 목차
o ANYALPHA
문자열에서 알파벳 문자를 검색하여, 가장 먼저 검색된 알파벳 문자의 위치를 반환한다.
Category: | 문자함수 (문자열처리함수) |
문 법
ANYALPHA (string <,start>) |
Arguments
Required Argument
- string
는 검색하기 위한 문자형 상수, 변수 또는 표현식을 지정한다.
Optional Argument
- start
검색을 시작할 위치와 검색 방향을 지정하기 위한 정수를 지정한다.(선택적 인수)
상세 내용
ANYALNUM 함수는 문자열에서 가장 먼저 검색되는 대문자 또는 소문자를 검색한다. 이러한 문자가 발견되면 ANYALPHA 함수는 문자열에서 해당 문자의 위치를 반환한다. 해당 문자를 찾을 수 없으면 ANYALPHA 함수는 0을 반환한다.
1개의 인수를 사용하는 경우, ANYALPHA 함수는 문자열의 시작 부분부터 검색을 시작한다. 2개의 인수를 사용할 경우 2번째 인수 start은 절대값으로 처리되어서 검색을 시작하기 위한 위치를 지정한다. 검색 방향은 다음과 같이 결정된다.
- start 인수의 값이 양수인 경우, 검색은 오른쪽 방향으로 진행된다.
- start 인수의 값이 음수인 경우, 검색은 왼쪽 방향으로 진행된다.
- start 인수의 값이 문자열의 음수의 길이보다 작으면 문자열의 끝에서 검색이 시작된다.
ANYALPHA 함수는 다음 중 하나에 해당하는 경우에 0 값을 반환한다.
- 검색하는 문자를 찾을 수 없는 경우
- start 인수의 값이 문자열 길이보다 큰 경우
- start = 0의 값인 경우
참 고
문자를 발견하지 못하면, 0을 반환한다.
- 만약 start값이 양이면, 오른쪽으로 검색한다.
- 만약 start값이 음이면, 왼쪽으로 검색한다.
- 만약 start값이 문자열의 length보다 큰 음수값이라면, 문자열의 끝에서 왼쪽으로 검색한다.
- 문자를 발견 못했거나, start값이 문자열의 길이보다 더 큰 경우에는 0값을 반환한다.
비 교
ANYALPHA 함수는 문자열에서 영문자를 검색하고, NOTALPHA 함수는 문자열에서 영문자가 아닌 문자의 위치를 검색한다.
관련 함수
함수명 | 함수내용 |
ANYALNUM | 영어와 숫자가 있는 문자에 대한 문자열을 검색하여, 영어와 숫자 문자의 첫 번째 위치를 반환한다. |
ANYALPHA | 알파벳 문자에대한 문자열을 검색하여, 알파벳 문자열이 존재하는 첫번째 위치를 반환한다. |
ANYCNTRL | 문자열을 검색하여 제어문자(control -특수)의 첫번째 위치를 반환한다. |
ANYDIGIT | 문자열을 검색하여 숫자(DIGIT)의 첫번째 위치를 반환한다. |
ANYFIRST | 문자열을 검색하여서 validvarname=v7하에서 SAS변수 이름에서 첫 번째 위치에 적합한 문자의 첫번째 위치를 반환한다. |
ANYGRAPH | 문자열을 검색하여 그래픽 문자의 첫번째 위치를 반환한다. |
ANYLOWER | 문자열을 검색하여 소문자의 첫번째 위치를 반환한다. |
ANYNAME | 문자열을 검색하여서 validvarname=v7하에서 SAS변수 이름으로 유효한 문자의 첫번째 위치를 반환한다. |
ANYPRINT | 문자열을 검색하여 인쇄가능한 문자의 첫번째 위치를 반환한다. |
ANYPUNCT | 문자열을 검색하여 구두 문자의 첫번째 위치를 반환한다. |
ANYSPACE | 문자열을 검색하여 공란 문자(Blank,가로탭,세로탭,Carriage Return,line feed,form feed등)의 첫번째 위치를 반환한다. |
ANYUPPER | 문자열을 검색하여 대문자의 첫번째 위치를 반환한다. |
ANYXDIGIT | 문자열을 검색하여 숫자를 재표현한 16진수 문자(1~10, a~f)의 첫번째 위치를 반환한다. |
NOTALNUM | non-alphanumeric 문자(문자와 숫자를 제외)에 대한 문자열을 검색하여, 첫번째 위치를 반환한다. |
NOTALPHA | non-alphabetic 문자(대소문 문자를 제외)에 대한 문자열을 검색하여, 첫번째 위치를 반환한다. |
NOTCNTRL | 문자열을 검색하여 제어문자가 아닌 문자의 첫번째 위치를 반환한다. |
NOTDIGIT | 문자열을 검색하여 digit가 아닌 첫번째 위치를 반환한다. |
NOTFIRST | validvarname=v7하에서 변수 이름의 첫번째 위치에 올 수 없는 문자를 검색하여서 첫 번째 위치를 반환한다. |
NOTGRAPH | non-graphical문자를 찾아서 첫 번째 위치를 반환한다. |
NOTLOWER | 문자열을 검색하여 소문자가 아닌 문자의 첫번째 위치를 반환한다. |
NOTNAME | validvarname=v7하에서 SAS변수이름에 올 수 없는 문자의 첫번째 위치를 반환한다. |
NOTPRINT | non-printable 문자를 검색하여 첫번째 위치를 반환한다. |
NOTPUNCT | 구두문자가 아닌 문자를 검색하여 첫번째 위치를 반환한다. |
NOTSPACE | white-space(blank,가로탭,세로탭,캐리지 리턴, 라인 feed,form feed)가 아닌 문자를 검색하여 첫번째 위치를 반환한다. |
NOTUPPER | 대문자가 아닌 문자의 첫번째 위치를 반환한다. |
NOTXDIGIT | 16진수가 아닌 문자의 첫번째 위치를 반환한다. |
예 제
string문자열을 검색하여 알파벳 문자의 첫 번째 위치를 반환받아서, string함수를 사용하여서 알파벳 문자를 추출한다.
SAS Statements |
DATA ANYALPHA;
STRING='NEXT = _N_ + 12E3;';
J = 0;
DO UNTIL(J=0);
J = ANYALPHA(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;
Results |
J=1 C=N
J=2 C=E
J=3 C=X
J=4 C=T
J=9 C=N
J=16 C=E
THAT'S ALL
SAS 함수(SAS Function) 리스트 링크 |
엑셀(EXCEL)과 SAS 함수(SAS Function) 비교 리스트 링크 |
SAS 데이터 스텝 구문 리스트(SAS Data Step Statement) |
2006년 백승민 제작하였답니다.
( http://cafe.daum.net/statsas )
'SAS > SAS 함수' 카테고리의 다른 글
【SAS 함수】 8. ANYDIGIT 함수 (0) | 2018.11.15 |
---|---|
【SAS 함수】 7. ANYCNTRL 함수 (0) | 2018.11.15 |
【SAS 함수】 5. ANYALNUM 함수 (0) | 2018.11.15 |
[SAS 함수] 4. AIRY 함수 (0) | 2018.11.15 |
【SAS 함수】 3. ADDRLONG 함수 (0) | 2018.11.15 |
댓글