与浮点数匹配的Python正则表达式

Joh*_*åde 4 python regex floating-point

可能重复:
如何使用正则表达式检测浮点数

如何编写匹配浮点数字符串表示的Python正则表达式?

表达式应匹配float构造函数接受的任何字符串,如float('3.5').因此表达式应匹配'0.','.0'但不匹配'.'

无需匹配无穷大和NaN的字符串表示.

Joh*_*åde 21

r'[+-]?(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?'
Run Code Online (Sandbox Code Playgroud)

  • @Jingjie Zhan:Python和C++都接受05.5作为有效的浮点字面值.Python和C++都不接受5.5e + 1.2. (2认同)