整数或双精度值的正则表达式
本文关键字:正则表达式 双精度 整数 | 更新日期: 2023-09-27 18:36:12
我正在尝试制作一个正则表达式来接受整数和双精度值(正值和负值)。
这是我所拥有的:
@"-?d*(?:'d*'.'d*)?$"
在将其标记为重复问题之前,我检查过的所有问题,因此我最终会遇到相同的问题:
5 and -5 -> true
5.00 and -5.00 -> true
BUT... 5. and -5. -> true
它只接受<数字+点>,在本例中为"5."和"-5."作为"有效"数字。同样,同样的问题也出现在我已经编译的其他类似答案中。
这应该适合您:
@"-?'d+(?:'.'d+)?"
仅当点后面有数字时才匹配点。
这里是匹配
整数和双精度值(正值和负值)的正则表达式:
-?'d+['.?'d+]*
解释:
- 首先检查负号
- 第二次检查任何数字
- 括号中的第三个检查(零个或多个)小数点和后面的数字
试试这个:
/^-?'d(.'d+)?[^.]/