字符处理只针对C、N、D、T、String类型,不做类型转换,都按照C类型处理,也可以处理这些类型构成的结构体,有专门的字符串比较、定位操作;
*CONCATENATE first_name last_name INTO first_name SEPARATED BY separate.
*WRITE / first_name.
SPLIT first_name AT separate INTO first_name last_name.
WRITE / sy-subrc.
*sy-subrc 0 ok 4 truncated
WRITE / first_name.
WRITE / last_name.
DATA: text TYPE string,
table TYPE TABLE OF string.
text = 'this is a program language'.
SEARCH text FOR 'pro'.
*SEARCH text FOR '.pro'.
*SEARCH text FOR '*pro'.
*SEARCH text FOR 'pro*'.
WRITE / sy-subrc.
WRITE / sy-fdpos.
WHILE sy-subrc = 0.
REPLACE ' ' WITH '-' INTO text.
ENDWHILE.
WRITE / text.
DATA length TYPE i.
length = STRLEN( text ).
WRITE / length.
SPLIT text AT '-' INTO TABLE table.
LOOP AT table INTO text.
WRITE / text.
ENDLOOP.
SHIFT、CONDENSE、TRANSLATE、CONVERT TEXT、OVERLAY;
比较表达式通配符号* + 转义字符 # 如#A、#a、#*、#+、##、# ;
DATA: str(10) TYPE c VALUE 'ABCDEFGHI',
num(10) TYPE c VALUE '0123456789'.
WRITE / str+2(3).
num+3(2) = str+2(2).
WRITE / num.
WRITE / sy-datum+4(2).
可以使用变量的情况:MOVE语句或赋值运算符、WRITE TO语句、ASSIGN语句分配符号、PERFORM传送数据给子程序;