REPLACE(替换字段内容)

语法:

REPLACE <str1> WITH <str2> INTO <c> [LENGTH <l> ].

ABAP/4 搜索字段 <c> 中模式 <str1> 前 <l> 个位置第一 次出现的地 方。如果未 指定长度, 按全长度搜 索模式 <str1>。 然后,语句 将模式 <str1> 在字段 <c> 中第一次出 现的位置用 字符串 <str2> 替换。如果 指定长度<l>, 则只替换模 式的相关部 分。 如果将系统 字段 SY-SUBRC 的返回代码 设置为0, 则说明在 <c> 中找到 <str1> 且已用<str2>替换。非 0 的返回代码 值意味着未 替换。

<str1>、 <str2> 和 <len> 可为变量。

代码:

DATA: T(10) VALUE 'abcdefghij',
      STRING LIKE T,
      STR1(4) VALUE 'cdef',
      STR2(4) VALUE 'klmn',
      STR3(2) VALUE 'kl',
      STR4(6) VALUE 'klmnop',
      LEN TYPE I VALUE 2.
STRING = T.
WRITE STRING.
REPLACE STR1 WITH STR2 INTO STRING.
WRITE / STRING.
STRING = T.
REPLACE STR1 WITH STR2 INTO STRING LENGTH LEN.
WRITE / STRING.
STRING = T.
REPLACE STR1 WITH STR3 INTO STRING.
WRITE / STRING.
STRING = T.
REPLACE STR1 WITH STR4 INTO STRING.
WRITE / STRING.

结果显示:

abcdefghij
abklmnghij
abklmnefgh
abklghij
abklmnopgh

 

请注意,在最后一行中字段 STRING 是如何在右 边截断的。长度为 4 的搜索模式 ‘cdef’ 用长度为6的 ‘klmnop’ 替换。然后 ,填充字段 STRING 的剩余部分直到字段结尾。

转载于:https://www.cnblogs.com/yjyongil/p/10494565.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值