SPLIT 함수 : 여러 필드로 문자열을 구분자를 기준으로 나누는 문
: 하나의 문자열을 여러개의 필드로 분리하고 싶을 때 사용
DATA: mystring(30),
a1(10),
a2(10),
a3(10),
sep2(2) VALUE '**'.
- mystring: 전체 문자열 (30자)
- a1, a2, a3: 나눠 담을 각 필드 (10자씩)
- sep2: 구분자로 사용할 문자열, '**'
예제 - 기본 나누기
mystring = ' 01234**ABCD**6789'.
SPLIT mystring AT sep2 INTO a1 a2 a3.
변수 내용
a1 | ' 01234' |
a2 | 'ABCD' |
a3 | '6789' |
모든 필드의 길이는 10이기 때문에 남은 공간은 자동으로 공백으로 채워짐
만약 필드 수보다 많은 분할을 한다면?
mystring = ' 01234**ABCD**6789**XYZ'.
SPLIT mystring AT sep2 INTO a1 a2 a3.
- **가 3번 등장하기 때문에 4개로 나뉘어야 하지만, a1, a2, a3 3개의 필드만 선언되어있음
- 분리할 항목 수 > 필드 수인 경우 → 마지막 필드에 나머지 전부가 저장됨
- 마지막 필드의 크기를 초과할 경우 → 잘림(Truncated)
'SAP' 카테고리의 다른 글
SAP ABAP Programming for Beginners - 25 디버깅 (0) | 2025.04.02 |
---|---|
SAP ABAP Programming for Beginners - 24 Sub-fields (0) | 2025.04.02 |
SAP ABAP Programming for Beginners - 22 Shift (0) | 2025.04.02 |
SAP ABAP Programming for Beginners - 21 search (0) | 2025.04.02 |
SAP ABAP Programming for Beginners - 20 replace (0) | 2025.04.02 |