SAP ABAP 判断字符串是否能转成整数、小数、其他字符串

FUNCTION zhy_fm_check_dic.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(INPUT) TYPE  STRING
*"  EXPORTING
*"     VALUE(E_TYPE) TYPE  ZSTR_TYPE
*"  EXCEPTIONS
*"      NO_INPUT
*"----------------------------------------------------------------------

  DATA lv_str TYPE string.

  lv_str = input.

  IF lv_str IS INITIAL .
    RAISE no_input.
  ENDIF.

  CHECK NOT lv_str IS INITIAL .

  IF lv_str CA ' '.
    e_type = 'O'.
  ENDIF.

  CHECK NOT lv_str CA ' '.

  IF lv_str = '0'.
    e_type = 'I'.
  ENDIF.

  CHECK NOT lv_str = '0'.

  IF lv_str CO '0123456789'.
    "纯数字
    IF lv_str+0(1) = '0'.
      "零开头的纯数字
      e_type = 'O'.
    ELSE.
      "非0开头的纯数字字符串 = 整数
      e_type = 'I'.
    ENDIF.

  ELSE.

    IF lv_str CO '0123456789.'.

      IF lv_str+0(1) = '.'.
        ".开头的纯数字
        e_type = 'O'.
      ELSE.
        "小数
        e_type = 'D'.
      ENDIF.

    ELSE.
      e_type = 'O'.
    ENDIF.

  ENDIF.
ENDFUNCTION.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值