in 연산자
in 연산자는 배열에서 또는 DataTable의 열에서 값을 검색합니다. 값이 발견되면 표현식이 TRUE로 평가하고 sysVar.arrayIndex 시스템 변수가 값이 들어 있는 요소의 색인으로 설정됩니다. 값을 찾을 수 없는 경우에는 표현식이 FALSE로 평가하고 sysVar.arrayIndex가 0으로 설정됩니다.
구문

- searchValue
- 표현식입니다.
- array
- 1차원 배열이거나 다차원 배열의 요소입니다.
- dataTableColumn
- DataTable 파트의 열 이름입니다. in 연산자는 열이 1차원 배열인 것처럼 해당 열과 상호작용합니다.
- start
- 정수 또는 정수로 해석되는 표현식입니다. start의 값은 searchValue를 검색할 첫 번째 요소의 색인을 지정합니다. start의 값이 배열에 있는 요소의 수보다 큰 경우 표현식이 false로 평가하고 sysVar.arrayIndex는 0으로 설정됩니다. in 표현식에 from start가 포함되지 않은 경우에는 열 또는 배열의 첫 번째 요소에서 검색을 시작합니다. (EGL 배열 색인은 0이 아니라 1에서 시작합니다.)
예제
아래 표는 다음과 같이 정의된 문자 배열 myArray를
참조하는 경우 in 연산자의
영향을 표시합니다.
myArray CHAR(1)[3] {"A", "B", "C"};
| 논리식 | 표현식의 값 | sysVar. ArrayIndex의 값 | 주석 |
|---|---|---|---|
| "A" in myArray | true | 1 | |
| "C" in myArray from 2 | true | 3 | 두 번째 요소("B")에서 검색을 시작합니다. |
| "A" in myArray from 2 | false | 0 | 두 번째 요소("B")에서 검색을 시작합니다. |
다음 예에서 myArray01D는 다음과 같이 정의되는 문자열의
1차원 배열입니다.
myArray01D STRING[] = ["ABC", "DEF", "GHI"];
myArray02D는
2차원 배열이며 단일 문자를 포함하는 각 요소(예: myArray02D[1,1])는
다음과 같이 정의됩니다. myArray02D CHAR(1)[3][3] = [["A", "B", "C"],
["D", "E", "F"],
["G", "H", "I"]];
다음 표는 myArray02D에 대한 in 연산자의 영향을 표시합니다.
| 논리식 | 표현식의 값 | sysVar. ArrayIndex의 값 | 주석 |
|---|---|---|---|
| "DEF" in myArray01D | true | 2 | |
| "C" in myArray02D[1] | true | 1 | |
| "I" in myArray02D[3] from 2 | true | 3 | 세 번째 행, 두 번째 요소에서 검색을 시작합니다. |
| "G" in myArray02D[2] from 2 | false | 0 | 검토 중인 행의 마지막 요소에서 검색을 종료합니다. |
| "G" in myArray02D[2] from 4 | false | 0 | 두 번째 색인이 검색할 수 있는 열의 수보다 큽니다. |
호환성
| 플랫폼 | 문제 |
|---|---|
| JavaScript 생성 | in 연산자가 지원되지 않습니다. |