CDS视图中的字符串函数

ABAP CDS提供了许多用于字符串处理的内置函数。其中一些已在NW 7.40版本中提供,其他一些已在NW 7.50中新增。

1.字符串处理的一些内置函数(NW 7.40)

1.1.concat(arg1,arg2)

连接两个字符串的函数,

  • 返回CHAR或STRING类型的结果(取决于arg1,arg2的类型)
  • 删除所有尾随的空白
  • 对应于ABAP语句CONCATENATE,无需添加SEPARATED BY

1.2.replace(arg1, arg2, arg3)

字符串替换,

  • 结果类型取决于arg1的类型
  • 对应于ABAP语句,用arg3替换arg1中的arg2的所有匹配项。

例:

1.3.substring(arg,pos,len)

返回字符串arg从,第pos位开始,取len长度的字符串。

  • 结果类型取决于arg的类型
  • 类似于ABAP函数substring()或直接子字符串访问
  • 重要区别:pos表示位置,而不是偏移量!

例:

2.字符串处理的某些内置函数(NW 7.50)

2.1.concat_with_space(arg1,arg2,count)

连接字符串门arg1,arg2,并中中间加入count个空格。

  • 与concat()类似,但在arg1和arg2之间具有计数空间
  • 类似于ABAP语句CONCATENATE,添加了SEPARATED BY

2.2.length(arg)

在CDS中得到字符串长度

  • 返回类型为INT4的结果
  • 尾随空格不计算
  • 对应于ABAP内置函数numofchar()

2.3.left(arg,n) and right(arg,n)

取字符串arg的右边(左边)N位长度的字符串

  • 与substring()类似,但返回arg的前n个或后n个字符
  • left()对应于ABAP表达式arg(n)