SAP ABAP 字符串模版(String Template)核心知识点举例说明试读版

简介: SAP ABAP 字符串模版(String Template)核心知识点举例说明试读版

SAP ABAP 字符串模版 (String Template) 是一个帮助我们写出整洁的 ABAP 代码的好帮手。


按照本教程一贯的作风,我们还是通过实际的简单例子来学习。


假设我们的需求是生成如下这个形式的字符串:


Hello '{用户名}', your work is '{工作名}'


其中 Hello 和 , 以及 your work is 这些是静态硬编码的字符串。而大括号里的用户名,工作名都是占位符号,在代码运行时,由 ABAP 变量的实际值所替代。


注意这里的需求细节,两个占位符的值最后实际输出时,需要被单引号 ' 所包裹。


和其他高级编程语言一样,ABAP 也有很多种方式实现这个需求。


实现方法1:使用字符串连接符号 &&

这种办法简单直接粗暴,看下面的代码:

REPORT zst.
DATA: name   TYPE string VALUE 'Jerry',
      work   TYPE string VALUE 'ABAP',
      result TYPE string.
result = 'Hello ' && '''' && name && ''',' && 'your work is ' && '''' && work && ''''.
WRITE:/ result.


这个解决方案是不合格的,我们先看看执行结果如何:

可以看到,尽管我们有意在 ABAP 代码里在 Hello 后面留了一个空格符号,但是运行时,这个符号没有被 ABAP 系统考虑到。、


同时,isABAP 之间的空格也被吞了。


究其原因,在笔者之前的教程里已经做过介绍:



通过单引号 ' 定义的文本字段字面量,其末尾的空格符号会自动被 ABAP 系统忽略。

那么这个需求到底如何正确实现呢?讲解过程如下

相关文章
|
1月前
|
存储 缓存 测试技术
CMake String函数:如何巧妙地在cmake中操作字符串
CMake String函数:如何巧妙地在cmake中操作字符串
100 0
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
|
16天前
|
JavaScript
js 字符串String转对象Object
该代码示例展示了如何将一个以逗号分隔的字符串(`'1.2,2,3,4,5'`)转换为对象数组。通过使用`split(',')`分割字符串并`map(parseFloat)`处理每个元素,将字符串转换成浮点数数组,最终得到一个对象数组,其类型为`object`。
|
20天前
|
XML 编解码 数据格式
Python标准数据类型-String(字符串)
Python标准数据类型-String(字符串)
23 2
|
24天前
|
数据库 存储 BI
SAP ABAP CDS View 源代码存储的数据库表揭秘和其他相关数据库表介绍试读版
SAP ABAP CDS View 源代码存储的数据库表揭秘和其他相关数据库表介绍试读版
12 0
SAP ABAP CDS View 源代码存储的数据库表揭秘和其他相关数据库表介绍试读版
|
24天前
|
数据库
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
10 0
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
|
1月前
|
SQL JavaScript
js开发:请解释什么是ES6的模板字符串(template string),并给出一个示例。
ES6的模板字符串以反引号包围,支持变量和表达式插入以及多行书写。例如,插入变量值`Hello, ${name}!`,计算表达式`${num1 + num2}`,以及创建多行字符串。模板字符串保留原始空格和缩进,简化了字符串拼接,提高了代码可读性。
18 6
|
1月前
|
SQL Java
使用java中的String类操作复杂的字符串
使用java中的String类操作复杂的字符串
9 0
|
1月前
|
前端开发 搜索推荐 开发者
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
27 0
|
1月前
|
JavaScript 前端开发 开发者
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
15 0