Req ex 用于 9+2 Numerci 加十进制值
Posted
技术标签:
【中文标题】Req ex 用于 9+2 Numerci 加十进制值【英文标题】:Req ex for 9+2 Numerci plus decimal values 【发布时间】:2021-01-01 10:38:22 【问题描述】:我正在寻找具有以下要求的正则表达式:
-
小数点后9 + 2
如果金额为零,则应该是无效的
我尝试了^[1-9][0-9]*$
,但它确实有效。
【问题讨论】:
你有没有尝试过?怎么没用? 我正在尝试查看博客。例如,我刚刚在堆栈流站点上发现 ^[1-9][0-9]*$ 的值大于零。 【参考方案1】:使用
^(?![0.]+$)\d1,9\.\d2$
见proof
说明
--------------------------------------------------------------------------------
^ the beginning of the string
--------------------------------------------------------------------------------
(?! look ahead to see if there is not:
--------------------------------------------------------------------------------
[0.]+ any character of: '0', '.' (1 or more
times (matching the most amount
possible))
--------------------------------------------------------------------------------
$ before an optional \n, and the end of
the string
--------------------------------------------------------------------------------
) end of look-ahead
--------------------------------------------------------------------------------
\d1,9 digits (0-9) (between 1 and 9 times
(matching the most amount possible))
--------------------------------------------------------------------------------
\. '.'
--------------------------------------------------------------------------------
\d2 digits (0-9) (2 times)
--------------------------------------------------------------------------------
$ before an optional \n, and the end of the
string
【讨论】:
【参考方案2】:对“零”使用负面的展望,锚定开始。这是一种方法:
^(?!0*\.00)\d+\.\d\d$
子表达式(?!0*\.00)
的意思是“后面的内容不能是任何数量的0
(包括没有)然后是.00
”。
【讨论】:
以上是关于Req ex 用于 9+2 Numerci 加十进制值的主要内容,如果未能解决你的问题,请参考以下文章