Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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_Numbers_Dart_Range - Fatal编程技术网

JavaScript正则表达式接受带有逗号分隔符(千)和点分隔符(小数)的数字

JavaScript正则表达式接受带有逗号分隔符(千)和点分隔符(小数)的数字,javascript,regex,numbers,dart,range,Javascript,Regex,Numbers,Dart,Range,你们中有谁能帮我提供一个正则表达式,它可以接受以下内容: 每一千个逗号将被接受。 不少于4个小数点 我一直在测试此模式,但在某些情况下失败: ^\d+(\,\d+{1.3} \.d{1.4})*$ 有效输入: 1 11 111 1,111 1,111,111 1.1111 11.1111 111.1111 1,111.1111 Any letter 1,1 1.1 1.11 1,11.11 1,111.1 无效输入: 1 11 111 1,111 1,111,111 1.1111 11.1

你们中有谁能帮我提供一个正则表达式,它可以接受以下内容:

每一千个逗号将被接受。 不少于4个小数点

我一直在测试此模式,但在某些情况下失败:

^\d+(\,\d+{1.3} \.d{1.4})*$
有效输入:

1
11
111
1,111
1,111,111
1.1111
11.1111
111.1111
1,111.1111
Any letter
1,1
1.1
1.11
1,11.11
1,111.1
无效输入:

1
11
111
1,111
1,111,111
1.1111
11.1111
111.1111
1,111.1111
Any letter
1,1
1.1
1.11
1,11.11
1,111.1
主要标准是: (小数点后4位为必填项)。
(千分之三的数字必须有逗号。)

这比

/^\d\d?\d?(,\d\d\d)*(\.\d\d\d\d)?$/
或者如果你愿意的话

/^\d{1,3}(,\d{3})*(\.\d{4})?$/

这比你想象的更复杂吗

/^\d\d?\d?(,\d\d\d)*(\.\d\d\d\d)?$/
或者如果你愿意的话

/^\d{1,3}(,\d{3})*(\.\d{4})?$/

您询问之前搜索过吗?-->右侧的相关问题有您应该尝试的答案。这不清楚:
1.1
1.11
1111.1
似乎有效。数字中不超过4个小数点意味着可以有1到4个小数点。但是,在底部,您必须填写4个小数点。如果最后一个语句是正确的,您需要
^(?:\d{1,3}(?:,\d{3})*\d+(:\。\d{4})$
^\d{1,3}(?:,\d{3})*(?:\。\d{4})$
感谢您注意到Wiktor,我刚刚编辑了消息,应该不少于4个小数点。请尝试
^\d{1,3}:,\d{4}。或
^(?:\d{1,3}(?:,\d{3})*\d+(:\.\d{4})$
如果
12334455767
相似的数字也必须匹配。一个数字不能有4个小数点:最多一个。我想你指的是十进制数字。但你也可能是说:要么根本没有十进制数字,要么至少有4个。你问之前搜索过吗?-->右侧的相关问题有您应该尝试的答案。这不清楚:
1.1
1.11
1111.1
似乎有效。数字中不超过4个小数点意味着可以有1到4个小数点。但是,在底部,您必须填写4个小数点。如果最后一个语句是正确的,您需要
^(?:\d{1,3}(?:,\d{3})*\d+(:\。\d{4})$
^\d{1,3}(?:,\d{3})*(?:\。\d{4})$
感谢您注意到Wiktor,我刚刚编辑了消息,应该不少于4个小数点。请尝试
^\d{1,3}:,\d{4}。或
^(?:\d{1,3}(?:,\d{3})*\d+(:\.\d{4})$
如果
12334455767
相似的数字也必须匹配。一个数字不能有4个小数点:最多一个。我想你指的是十进制数字。但你也可能是说:要么根本没有十进制数字,要么至少有4个。实际上我和OP没有确认它在工作。实际上我和OP没有确认它在工作。