SAP ABAP – 字符串
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 支持各种操作字符串的语句。
S.No. | 声明和目的 |
---|---|
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
注意–
-
在串联的情况下,“sep”在字段之间插入一个空格。
-
CONDENSE 语句删除字段之间的空格,但只留下 1 个字符的空格。
-
‘NO-GAPS’ 是删除所有空格的 CONDENSE 语句的可选补充。