SAP ABAP 字符串
在ABAP编程中广泛使用的字符串是一系列字符。
我们使用数据类型C变量保存字母数字字符,最少为1个字符,最多为65,535个字符。 默认情况下,这些向左对齐。
创建字符串
以下声明和初始化创建一个由“Hello"字组成的字符串。 字符串的大小正好是单词“Hello"中的字符数。
Data my_Char(5) VALUE 'Hello'.
以下程序是创建字符串的示例。
REPORT YT_SEP_15. DATA my_Char(5) VALUE 'Hello'. Write my_Char.
上面的代码产生以下输出 -
Hello
字符串长度
为了找到字符串的长度,我们可以使用 STRLEN语句。 STRLEN()函数返回字符串中包含的字符数。
例子
REPORT YT_SEP_15. DATA: title_1(10) VALUE 'Tutorials', length_1 TYPE I. length_1 = STRLEN( title_1 ). Write: / 'The Length of the Title is:', length_1.
上面的代码产生以下输出 -
The Length of the Title is: 9
ABAP支持处理字符串的各种语句。
编号 | 声明和目的 |
---|---|
1 | CONCATENATE 两个字符串连接形成第三个字符串。 |
2 | CONDENSE 此语句删除空格字符。 |
3 | STRLEN 用于查找字段的长度。 |
4 | REPLACE 用于以字符进行替换。 |
5 | SEARCH 在字符串中运行搜索。 |
6 | SHIFT 用于向左或向右移动字符串的内容。 |
7 | SPLIT 用于将字段的内容拆分为两个或多个字段。 |
下面的例子使用了上面提到的一些语句:
例子
REPORT YT_SEP_15. DATA: title_1(10) VALUE 'Tutorials', title_2(10) VALUE 'Point', spaced_title(30) VALUE 'Tutorials Point Limited', sep, dest1(30), dest2(30). CONCATENATE title_1 title_2 INTO dest1. Write: / 'Concatenation:', dest1. CONCATENATE title_1 title_2 INTO dest2 SEPARATED BY sep. Write: / 'Concatenation with Space:', dest2. CONDENSE spaced_title. Write: / 'Condense with Gaps:', spaced_title. CONDENSE spaced_title NO-GAPS. Write: / 'Condense with No Gaps:', spaced_title.
上面的代码产生以下输出:
Concatenation: TutorialsPoint Concatenation with Space: Tutorials Point Condense with Gaps: Tutorials Point Limited Condense with No Gaps: TutorialsPointLimited
注意:
在Concatenation的情况下,'sep'在字段之间插入一个空格。
CONDENSE语句删除字段之间的空格,但只留下1个字符的空格。
'NO-GAPS'是CONDENSE语句的可选添加,删除所有空格。