在SAP ABAP中用空格替换特殊字符

时间:2013-10-24 15:02:55

标签: hex sap abap

我有一个描述“描述中的标签”。它确实有标签。 SAP ABAP将此选项卡转换为#,因此其显示为“描述,其中带有#tab”。我希望将其替换为SPACE。我想编写一个代码来检查有效字符和任何无效的替换空格。

我有以下代码,但它不会检查所有字符。

REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>horizontal_tab
    IN cs_orderadm_h_badi-description WITH ` `.

我曾经想过使用常量写出每个有效字符作为常量,但我需要一个更好的方法来做到这一点。

任何帮助或建议表示赞赏。请记住,这是特定于SAP ABAP的转换。感谢

3 个答案:

答案 0 :(得分:3)

几乎与Looking for Non-Printable characters inside internal table ABAP

重复
REPLACE ALL OCCURRENCES OF REGEX '[^[:print:]]+$'
  IN cs_orderadm_h_badi-description WITH ''
  IGNORING CASE.

答案 1 :(得分:1)

WRITE cs_orderadm_h_badi-description TO lw_hash_desc.
REPLACE ALL OCCURRENCES OF '#' IN lw_hash_desc WITH ` `.
cs_orderadm_h_badi-description = lw_hash_desc.

适用于所有特殊字符,但也会替换现有的哈希值。如果您希望在字符串中使用这些内容,则首先需要使用独特的内容替换它们,并将其替换为上述代码后的哈希值。

答案 2 :(得分:0)

替换

IF cs_orderadm_h_badi-description = gc_hex_char.

if cs_order_adm_h_badi-description CO gc_hex_char.