判断是否是一个有效数字,提供一种正则表达式匹配的方式:
import re
class Solution(object):
def isNumber(self, s):
"""
:type s: str
:rtype: bool
"""
reg = "\s*[+,-]?(([0-9]+(\.[0-9]*)?)|([0-9]*(\.[0-9]+){1}))(e[+,-]?[0-9]+)?\s*"
m = re.match(reg, s)
if m :
return len(m.group()) == len(s)
else :
return False
另外,讨论区有很多DFA算法。