正则表达式判断字符串是否为数字

IF cl_abap_matcher=>matches(
    pattern = '^(-?[1-9]\d*(\.\d*[1-9])?)|(-?0\.\d*[1-9])$'
    text = '1.01' ) = abap_true.

  WRITE '数字'.
ELSE.

  WRITE '非数字'.
ENDIF.

 

-?       :负号
[1-9]\d*     :整数部分(整数第一位不为0,后面的随意)
\.\d*[1-9]   :小数部分(小数点最后一位不为0,中间的随意)
0\.\d*[1-9]  :0.xxxx形式的小数

你可能感兴趣的:(SAP)