Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.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_Php_Regex - Fatal编程技术网

Javascript 正则表达式,用于匹配最多两位数字和最多两位小数的数字

Javascript 正则表达式,用于匹配最多两位数字和最多两位小数的数字,javascript,php,regex,Javascript,Php,Regex,过去几天我一直在搜索,但我找到的唯一正则表达式类型如下: (\d{0,2})\.?\d{1,2}$ 这适用于以下输入: 9 99 9.9 9.99 99.9 99.99 .9 .99 这些都没问题,但它也碰巧接受输入,比如 999 9999 我不想发生这种事。如何解决此问题?您可以交替使用此正则表达式: ^(?:\d{1,2}|\d{0,2}\.\d{1,2})$ 正则表达式说明: ^ # start (?: # start non-capturin

过去几天我一直在搜索,但我找到的唯一正则表达式类型如下:

(\d{0,2})\.?\d{1,2}$
这适用于以下输入:

9
99
9.9
9.99
99.9
99.99
.9
.99
这些都没问题,但它也碰巧接受输入,比如

999
9999

我不想发生这种事。如何解决此问题?

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

^(?:\d{1,2}|\d{0,2}\.\d{1,2})$

正则表达式说明:

^           # start
(?:         # start non-capturing group
   \d{1,2}  # match 1 or 2 digits
   |        # OR
   \d{0,2}  # match 0 to 2 digits
   \.       # followed by DOT
   \d{1,2}  # match 1 or 2 digits
)           # end non-capturing group
$           # end
使用下面的正则表达式

(\d{0,2})\.\.?\d{0,2}$

这是因为你可以选择接受句点字符。你不应该“搜索regexp”,而是根据你的要求来构造它。你制作电子邮件regex时,@Lashane:PHeh,我本来想做一个负面回顾,但这也很好+1@Farkie:javascript中没有lookback,他从来没有说过他在使用什么(还提到了PHP,它可以工作:))与9或99不匹配是的,我已经找到了,对不起。将尝试找到正确的正则表达式。