账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    使用正则表达式判断字符串是否表示数值
    28
    0

    剑指offer中的一题,请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。

    import re
    s = '12e'
    pattern = "[\+-]?[0-9](\.[0-9])?(eE?[0-9]+)?"
    if re.match(pattern,s)!=None:
    print(‘合法’)

    想到用正则来写,不过不熟悉正则,参考的是网上的一个例子,不过没有全部通过测试例。
    另,(eE?[0-9]+)?这个表达式的意思是eE?[0-9]+存在有一次或者没有,假设存在,e或者E后面必须要有数字才符合表达,表达式看上似乎是正确,不知道哪里有问题,请指点,谢谢。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 情殤念斷 普通会员 1楼
      502 Bad Gateway

      502 Bad Gateway


      nginx
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部