求只能输入 正数和两位小数 的正则表达式,要能用的。。。

我在网上找了好久,发现这个还差不多[0-9]+\.?[0-9]*,就是不能控制小数的位数。请各位大侠,发能用的。。。... 我在网上找了好久,发现这个还差不多[0-9]+\.?[0-9]*,就是不能控制小数的位数。请各位大侠,发能用的。。。 展开
 我来答
前端报错
2017-06-14 · 前端开发技术分享,分析
前端报错
采纳数:1573 获赞数:7027

向TA提问 私信TA
展开全部
/**
 * 校验精确到小数点后最多两位的数字
 * @author g8up.cn
 * @date 2017.06.14
 */

//测试
function test( reg ){
// 用例: case + 预期
const ret = [{
case:'0',
exp: true,
},{
case:'0.1',
exp: true,
},{
case:'0.12',
exp: true,
},{
case:'0.123',
exp: false,
},{
case:'-0.12',
exp: true,
},{
case:'12',
exp: true,
},{
case:'012',
exp: false,
},{
case:'-012',
exp: false,
},{
case:'12.0',
exp: true,
},{
case:'12.',
exp: false,
},{
case:'00',
exp: false,
},{
case:'-0',
exp: true,
},{
case:'-12.123',
exp: false,
},{
case:'-0.1.2',
exp: false,
},].filter( item => {
return reg.test( item.case) !== item.exp;
});

console.log('验证不通过的用例有', ret.map(item=>item.case).join('\n') );// 打印非预期
}

var reg = /^((?:-?0)|(?:-?[1-9]\d*))(?:\.\d{1,2})?$/;
test( reg );
飞鱼片
2013-03-30 · TA获得超过105个赞
知道答主
回答量:113
采纳率:0%
帮助的人:82.6万
展开全部
用这个\d{1,}\.\d{2}$
{2}中 2 就是来匹配小数位数的,$表示结尾的意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mg韦
2018-06-13
知道答主
回答量:6
采纳率:0%
帮助的人:5040
展开全部
/^([1-9]\d*|0)(\.\d{1,2})?$/

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

匹配整数或最多两位小数

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户24928
2018-06-10
知道答主
回答量:3
采纳率:0%
帮助的人:2613
展开全部
^([1-9][0-9]*)(\.[0-9]{2})?$|^(0\.[0-9]{2})$
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-31
展开全部
[0-9]+\.?[0-9]{0,2}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式