1. 程式人生 > >正則表示式判斷字串是否為數字

正則表示式判斷字串是否為數字

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形式的小數