为了账号安全,请及时绑定邮箱和手机立即绑定

使用正则表达式判断字符串是否表示数值

使用正则表达式判断字符串是否表示数值

当年话下 2019-02-20 08:15:36
剑指offer中的一题,请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 import res = '12e'pattern = "[\+-]?[0-9](\.[0-9])?(eE?[0-9]+)?"if re.match(pattern,s)!=None: print(‘合法’) 想到用正则来写,不过不熟悉正则,参考的是网上的一个例子,不过没有全部通过测试例。另,(eE?[0-9]+)?这个表达式的意思是eE?[0-9]+存在有一次或者没有,假设存在,e或者E后面必须要有数字才符合表达,表达式看上似乎是正确,不知道哪里有问题,请指点,谢谢。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 1207 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信