繁体   English   中英

百分比大于0且小于或等于100的正则表达式

[英]Regular expression for percentages greater than 0 and less than or equal to 100

我在网上搜索并提出: /(^100(\\.0{1,2})?$)|(^([1-9]([0-9])?|0)(\\.[0-9]{1,2})?$)/

问题是它接受0。

也许你错误地思考这个问题。 如果可能,更好的方法是将字符串转换为double并使用算术运算符执行检查。

const examplePercentage = '0.5%';
const percentageAsFloat = parseFloat(examplePercentage); // 0.5
const isValid = percentageAsFloat > 0 && percentageAsFloat <= 100; // true

试试这个:

^0*(100(\.0{1,2})?|[1-9][0-9]?(\.[0-9]{1,2})?|0\.(0[1-9]|[1-9][0-9]?))$

它处理>= 1< 1不同。

我会解析数字并检查它的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM