在ABAP开发中我们常常会遇到字符串的连接,大部分人习惯使用CONCATENATE语句进行拼接字符串,但是CONCATENATE 有很大的限制,其中最主要两个问题为
1.不支持数字类型和字符类型的拼接
2.不可以使用变量表达式
针对以上问题我推荐使用字符串表达式来代替CONCATENATE,如果需要拼接的字符串不包含变量表达式,可以使用&&,而存在变量表达式的字符串连接需要用| |将变量表达式包起来,
**特殊的:如需要加入空格,需要使用全角空格而不能使用半角空格
参考代码如下
REPORT YTEST04.
DATA : str1 type string.
DATA : str2 type string.
DATA : str3 type string.
DATA : num1 type i.
str1 = 'Hello'.
str2 = 'World'.
num1 = 1.
str3 = str1 && str2 && num1.
WRITE str3.
WRITE /.
clear str3.
str3 = str1 && ' ' && str2 && ' ' && num1."半角空格
WRITE str3.
WRITE /.
clear str3.
str3 = str1 && ' ' && str2 && ' ' && num1."全角空格
WRITE str3.
WRITE /.
clear str3.
str3 = |{ strlen( str1 ) }| && ' ' && str2 && ' ' && num1."全角空格
WRITE str3.
结果: