价格验证,我这个是不是已经最严谨了,高手帮忙看看是不是可以一个正则搞定
能想到的错误的几种可能,应该没别的吧?
const isPrice = (price) => { if (typeof price === 'undefined' || typeof price === 'object' || !(/^\d+(\.\d{1,2})?$/.test(price)) || price[0] === '-') { return false; } price = price + ''; const prices = price.split('.'); if (prices.length > 2) { return false; } if (prices[0].length > 1 && prices[0][0] === '0') { return false; } return true;}
/^(0|[1-9]\d*)(\.\d{1,2})?$/
['1', '1.23', '32.245', '0.215', '10.214', '012.24'].forEach(item => { console.log(/^(0|[1-9]\d*)(\.\d{1,2})?$/.test(item))})
我一般会在 any-rule 或者 i-hate-regex 里面找,找到了一个类似的稍微改了一下。
/^([1-9]\d{0,}|0)(\.\d{1,2})?$/
const reg = /^([1-9]\d{0,}|0)(\.\d{1,2})?$/const testCases1 = [0.1, 1, 1.0, 123, 1234, 12345.67, '123', '123.45']console.log('正确用例', testCases1.map(v => reg.test(v)))// 正确用例 Array(8) [ true, true, true, true, true, true, true, true ]const testCases2 = [-0.99, -1, 0.123, '0123', '00.00', '123.45.67', '123,123', '123,123.45', {}, [], '', null]console.log('错误用例', testCases2.map(v => reg.test(v)))// 错误用例 Array(12) [ false, false, false, false, false, false, false, false, false, false, … ]
vue.config.js中配置了sourcemap后,热启动会变得非常慢,而且会闪过好几串乱码
idl文件,内容比较多,我删减了一些东西,不知道大佬可以从这里面看出哪个是 CLSD 和IID不。 有偿!!!有偿!!!有偿!!!很急
帮忙看看 这三句mysql能不能写成一句? 感觉执行3次影响效率,不知道为什么写成一句,该怎么写?
匹配 字符串类似'type=""action=""id=""' 需要匹配多个action=""中间的内容。
下面是监控网卡流量的 shell 脚本,运行后提示: expr:语法错误 看来看去不知道哪里出错了。
一个示例用例: 错误:无法取消应用scalaz的类型验证为类型为的类型构造函数,该类型构造函数由类型类 的实例造成的 我可以为自己做一个,比如: 但是为什么还没有呢?毕竟,已经定义了方法。 此外,我不能有和在一起了(这花了我很长时间才弄清楚...),因为另一个复杂的错误... 模糊的隐式值:类似于(我的实例)和trait中的方法...两者都匹配一些... 我应该修改scaraz的源代码吗?或者我完