Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.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
Regex 匹配字符串中正确逗号位置的正则表达式_Regex_Parsing_Numbers - Fatal编程技术网

Regex 匹配字符串中正确逗号位置的正则表达式

Regex 匹配字符串中正确逗号位置的正则表达式,regex,parsing,numbers,Regex,Parsing,Numbers,我想检查用户输入的位置,检查字符串是否有正确的逗号位置,以及数字在人眼中是否有效 以下是允许的数字: 1000 100 1 100000000000000 以下是不允许的数字: 1e+5 1e5 1,00 -105 100.50 100,00,00,0000000 我试着提出我自己的正则表达式,但这对我来说都是非常复杂的。这是我的正则表达式(^[0-9]{0,3}(,[0-9]*)?$),但它目前非常脆弱 有人能帮忙吗?您可以使用 ^\d{1,3}(?:,\d{3})*$ 见 详细信息

我想检查用户输入的位置,检查字符串是否有正确的逗号位置,以及数字在人眼中是否有效

以下是允许的数字:

  • 1000
  • 100
  • 1
  • 100000000000000
以下是不允许的数字:

  • 1e+5
  • 1e5
  • 1,00
  • -105
  • 100.50
  • 100,00,00,0000000
我试着提出我自己的正则表达式,但这对我来说都是非常复杂的。这是我的正则表达式(
^[0-9]{0,3}(,[0-9]*)?$
),但它目前非常脆弱

有人能帮忙吗?

您可以使用

^\d{1,3}(?:,\d{3})*$

详细信息

  • ^
    -字符串的开头
  • \d{1,3}
    -1、2或3位数字
  • (?:,\d{3})*
    -零次或多次连续出现
    • -逗号
    • \d{3}
      -3位数字
  • $
    -字符串结束

使用
^\d{1,3}(?:,\d{3})*$
@WiktorStribiż您能否将其作为答案提交,以便我可以标记为已回答?