我有这个模式,它成功了:
@"^-?(0\.\d*[0-9]|[0-9]\d*(\.\d+)?)$
但我希望这种模式不允许像这样的输入为零:
not allowed inputs:
0.0 //not allowed
00.00 //not allowed
allowed inputs:
0.07 // allowed
0.70 // allowed
and any number decimal
如果它只是“0”,我会使用否定的前瞻断言来使正则表达式失败。
@"^-?(?!0*(\.0*)?$)(0\.\d*[0-9]|[0-9]\d*(\.\d+)?)$
(?!0*(\.0*)?$)
如果数字仅包含零,则此表达式会使整个正则表达式失败。
正则表达式用于匹配模式,而不是检查数值。使用正则表达式找到一个可能的字符串,然后以任何您的主机语言(PHP 等)检查它的数值。