2 回答
TA贡献1789条经验 获得超10个赞
我不会尝试匹配所有未通过的情况,而是将以下单一模式用于您期望的格式,不包含空格:
rgb\([0-9]+,[0-9]+,[0-9]+\)
如果您还想断言数字都在 0 到 255 的范围内,那么我们可以将上面的内容修改为:
rgb\((1?[0-9]{1,2}|2[0-4][0-9]|25[0-5]),(1?[0-9]{1,2}|2[0-4][0-9]|25[0-5]),(1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])\)
代码示例:
var invalid1 = "rgb(255, 240, 0)";
var invalid2 = "rgb(0,0, 0)";
var invalid3 = "rgb ( 0,12,0)";
var invalid4 = "r gb(12,24,26 )";
var valid = "rgb(10,20,30)";
console.log(/^rgb\([0-9]+,[0-9]+,[0-9]+\)$/.test(invalid1));
console.log(/^rgb\([0-9]+,[0-9]+,[0-9]+\)$/.test(invalid2));
console.log(/^rgb\([0-9]+,[0-9]+,[0-9]+\)$/.test(invalid3));
console.log(/^rgb\([0-9]+,[0-9]+,[0-9]+\)$/.test(invalid4));
console.log(/^rgb\([0-9]+,[0-9]+,[0-9]+\)$/.test(valid));
TA贡献1818条经验 获得超8个赞
添加回答
举报