学习笔记(九)

字符处理只针对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传送数据给子程序;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章