我试图根据某些纸盒尺寸的输入动态计算音量。如何使用Javascript/JQuery检查字符串的格式是10 * 10 * 10,然后进行数学计算
例如a对于尺寸为10cm x 10cm x 10cm的纸箱,用户在文本输入中输入10 * 10 * 10。
然后,我的javascript会检查输入是否与此模式相匹配,然后执行数学运算并用结果填充另一个输入。 10×10×10 = 1000.
我想我需要使用正则表达式,我没有太多的经验。下面的代码在比赛阶段停止工作(无效的正则表达式:/ d + * d + * d + /:没有重复)尽管我很确定我不知道我在做什么。
任何人都可以帮忙吗?
carton_dimensions=$(this).val();
var pattern = "(\d+)\*(\d+)\*(\d+)";
var result = carton_dimensions.match(pattern);
if(result){
volume=result[0]*result[1]*result[2];
}
使用正则表达式文字符号:'var pattern = /(\ d +)\ *(\ d +)\ *(\ d +)/;'。请参阅[* Javascript正则表达式文字和构造函数*之间的差异](http://stackoverflow.com/questions/7964916/differences-between-javascript-regexp-literal-and-constructor)。 –
'Nothing to repeat'被抛出,因为JS RegExp不允许量化量词(如'+ *')。 –