Regex 如何使用正则表达式验证介于1和99之间的数字?

Regex 如何使用正则表达式验证介于1和99之间的数字?,regex,Regex,什么是正则表达式,用户可以输入1-99之间的任何整数或浮点数 对于只输入整数,我知道正则表达式是: ^(0?[1-9]|[1-9][0-9])$ 请告诉我输入整数和介于1-99之间的浮点数的原因。一个简单的版本是^[1-9][0-9]?$用于整数和^([1-8][0-9]?| 9[0-8]?)\。\d+$用于浮点数。如果两者都需要:^(([1-8][0-9]?|9[0-8]?)\。\d+|[1-9][0-9]?)$ 测试它试试[1-9][0-9]?([0-9]*) 编辑:以上内容也包括99.5

什么是正则表达式,用户可以输入1-99之间的任何整数或浮点数

对于只输入整数,我知道正则表达式是:

^(0?[1-9]|[1-9][0-9])$

请告诉我输入整数和介于1-99之间的浮点数的原因。

一个简单的版本是
^[1-9][0-9]?$
用于整数和
^([1-8][0-9]?| 9[0-8]?)\。\d+$
用于浮点数。如果两者都需要:
^(([1-8][0-9]?|9[0-8]?)\。\d+|[1-9][0-9]?)$

测试它

试试[1-9][0-9]?([0-9]*)

编辑:以上内容也包括99.5%左右。这不应该:

[1-9](([0-8](\.[0-9]*)?)|[0-9])?

测试它,它会工作

@Asad我想OP want也是FLOAT。只要检查数字是否在1.0到99.0之间,后端和前端都可能(javascript)@DhruvPathak,你知道这个用户是如何为web客户端制作的吗?@Daedalus不管应用程序语言是什么,如果它支持正则表达式,它必须支持浮点数IMHO的简单比较。我不知道有哪种情况下,正则表达式是检查数字是否在某个范围内的更好选择。@DhruvPathak我同意你的看法,我只是不知道你从哪里得到javascript。不知道。匹配99.5,高于99。^([1-8][0-9]?|9[0-8]?)\。\d+|[1-9][0-9]?)$工作正常。
谢谢各位。。。。。。。。。。。。。