Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果在句点(.)之前未指定数字,则为Javascript正则表达式_Javascript_Regex - Fatal编程技术网

如果在句点(.)之前未指定数字,则为Javascript正则表达式

如果在句点(.)之前未指定数字,则为Javascript正则表达式,javascript,regex,Javascript,Regex,我尝试了以下表达式,该表达式只允许2位小数: /^[0-9]+(\.[0-9]{1,2})?$/ 但它没有考虑像“.34”或“.5”这样的值,因为在周期之前没有任何数字。 如何更新表达式,以便在句点之前未指定任何内容时,表达式应在句点之前采用数字“0”。 so.34=>0.34,带有效的2位小数表达式。使用*代替+ ^[0-9]*(\.[0-9]{1,2})?$ +:匹配前面的一个或多个标记 *:匹配前面的0个或多个标记。使用*而不是+ ^[0-9]*(\.[0-9]{1,2})?$ +:

我尝试了以下表达式,该表达式只允许2位小数:

/^[0-9]+(\.[0-9]{1,2})?$/
但它没有考虑像“.34”或“.5”这样的值,因为在周期之前没有任何数字。 如何更新表达式,以便在句点之前未指定任何内容时,表达式应在句点之前采用数字“0”。 so.34=>0.34,带有效的2位小数表达式。

使用*代替+

^[0-9]*(\.[0-9]{1,2})?$
+:匹配前面的一个或多个标记

*:匹配前面的0个或多个标记。

使用*而不是+

^[0-9]*(\.[0-9]{1,2})?$
+:匹配前面的一个或多个标记


*:匹配前面的0个或多个标记。

您可以使用此正则表达式:

/^\d*\.?\d{1,2}$/


如果要将十进制数的格式设置为最多2个小数点,请使用
toFixed

var n = ".34";
var str = parseFloat(n).toFixed(2) // will do rounding as well
//=> 0.34

您可以使用此正则表达式:

/^\d*\.?\d{1,2}$/


如果要将十进制数的格式设置为最多2个小数点,请使用
toFixed

var n = ".34";
var str = parseFloat(n).toFixed(2) // will do rounding as well
//=> 0.34

是否只想匹配
.05
或添加一个零(如果没有)?如果在时段之前没有,则添加一个零。是否只想匹配
.05
或添加一个零(如果没有)?如果在时段之前没有,则添加一个零。这将允许空输入alsois true,可选项应在DOTS中。这将允许空输入alsois true,可选的应该在DotThank for optimized solution(谢谢优化的解决方案)中。谢谢优化的解决方案。