ABAP判断字符串是否为数字

需求:批导一个CHAR类型的字段,字段由数字+符号组成,如:(1,2,3,4),要求在上载的时候检查数据是否都为数字,且逗号为英文逗号

DATA(l_value) = '2,2,1 ,1'."字段

SPLIT l_value AT ',' INTO TABLE DATA(lt_split)."用英文符号,拆分成多个
LOOP AT lt_split INTO DATA(ls_split).


  IF cl_abap_matcher=>matches(
      pattern = '^(-?[1-9]\d*(\.\d*[1-9])?)|(-?0\.\d*[1-9])$'
      text = ls_split ) = abap_true."判断每个拆出来的字段是否为数字

    WRITE '数字'.

  ELSE.

    WRITE '非数字'.

  ENDIF.

ENDLOOP.

执行以上代码,通过拆分判断每个字段是否都为数字,结果是成立的,如下图:在这里插入图片描述

你可能感兴趣的:(ABAP语法,abap)