正则表达式匹配比率形式,不能以0开头,且是1:1形式

正则表达式验证比率形式1:1形式,前后数字不能为0,可以输入2位小数。

 /^[0-9]+(\.[0-9]{1,2})?:{1}[0-9]+(\.[0-9]{1,2})?$/

这种写法还有问题,或者是不是要用两个正则呀

/^(?!0+(\.0+)?\:)(?!\:0+(\.0+)?$)\d+(\.\d{1,2})?:\d+(\.\d{1,2})?$/
换这个/^(?!0+(\.0+)?\:.*?$)(?!.*?\:0+(\.0+)?$)\d+(\.\d{1,2})?:\d+(\.\d{1,2})?$/

['1:1', '1.0:2', '0.05:0.6', '12:12.0', '0:5.0', '0.0:1'].map(item => /^(?!0+(\.0+)?\:)(?!\:0+(\.0+)?$)\d+(\.\d{1,2})?:\d+(\.\d{1,2})?$/.test(item))

// [true, true, true, true, false, false]

请详细说明一下你的需求,目前看不懂。