Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.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 - Fatal编程技术网

Regex 正则表达式匹配带或不带小数的数字并排除小数

Regex 正则表达式匹配带或不带小数的数字并排除小数,regex,Regex,所以我有一个正则表达式模式,比如:^([\d]+)(\[\d]{1,2}?$ 我需要它来匹配像10001、10001.1和10001.10这样的数字,忽略以如下方式格式化的数字:1000a、10001.和10001.100 这个表达式似乎工作得很好,给了我两个部分,但是我如何使它排除小数点呢 现在如果我给它10001.10我会得到两个部分:10001和.10有没有办法让它给我10001和10 ^(\d+)(?:\.(\d{1,2}))?$ 您可以使用此正则表达式: ^(\d+)(?:\.(\d

所以我有一个正则表达式模式,比如:
^([\d]+)(\[\d]{1,2}?$

我需要它来匹配像
10001
10001.1
10001.10
这样的数字,忽略以如下方式格式化的数字:
1000a
10001.
10001.100

这个表达式似乎工作得很好,给了我两个部分,但是我如何使它排除小数点呢


现在如果我给它
10001.10
我会得到两个部分:
10001
.10
有没有办法让它给我
10001
10

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

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

^(\d+)(?:\.(\d{1,2}))?$
试试下面的正则表达式

^([\d]+)(?:\.([\d]{1,2}?))?$

现在这个正则表达式变成了我答案的副本:)@anubhava你已经有太多的名声了哈哈,给穷人留一些:)不,我不想吃掉任何人的代表,这只是一个评论,完全相似的答案已经存在。@Unihedron,我试过:^(\d+(:\)(\d{1,2})“$括号放错地方了。
[\d]
需要什么,它可以是
\d
@anubhava肯定的。”。如果我改变它,它将看起来像你的:-)