替换itab所有行中的字符串?
Replace the string in all lines of itab?
我正在尝试在 SAP ABAP 中创建一种算法,以从某些字段中删除 IBAN 一词。例如,在下面的照片中,我们有 KNBK-Bankschlüssel=7415000
、KNBK-Bankkontonummer= <IBAN 000000000008
。我正在尝试从该字段中删除 IBAN,以便 table.
中仅显示 000000000008
是否有任何字符串操作可以让我检查字段是否具有关键字 IBAN 并将其删除?
提前谢谢大家!
您可以使用 REPLACE 语句来完成:
IF word CS 'IBAN'. "to check if the string contains IBAN (as substring)
REPLACE 'IBAN' WITH '' INTO word. "This will remove the substring IBAB, but it will be replaced with a space
CONDENSE word NO-GAPS. "This will remove the space (and other spaces as well, if there is any in the string)
ENDIF.
查看屏幕截图,该字段包含“”(而不仅仅是 'IBAN'),因此您必须相应地修改代码。
另一种可能是REPLACE IN TABLE
:
REPLACE ALL OCCURRENCES OF REGEX '^.*IBAN>'
IN TABLE itab WITH ''
RESPECTING CASE.
此代码段将删除所有行中包含所有前面字符的所有 <IBAN>
。
我正在尝试在 SAP ABAP 中创建一种算法,以从某些字段中删除 IBAN 一词。例如,在下面的照片中,我们有 KNBK-Bankschlüssel=7415000
、KNBK-Bankkontonummer= <IBAN 000000000008
。我正在尝试从该字段中删除 IBAN,以便 table.
是否有任何字符串操作可以让我检查字段是否具有关键字 IBAN 并将其删除?
提前谢谢大家!
您可以使用 REPLACE 语句来完成:
IF word CS 'IBAN'. "to check if the string contains IBAN (as substring)
REPLACE 'IBAN' WITH '' INTO word. "This will remove the substring IBAB, but it will be replaced with a space
CONDENSE word NO-GAPS. "This will remove the space (and other spaces as well, if there is any in the string)
ENDIF.
查看屏幕截图,该字段包含“
另一种可能是REPLACE IN TABLE
:
REPLACE ALL OCCURRENCES OF REGEX '^.*IBAN>'
IN TABLE itab WITH ''
RESPECTING CASE.
此代码段将删除所有行中包含所有前面字符的所有 <IBAN>
。