• 第65题:有效数字


    一. 问题描述

    验证给定的字符串是否可以解释为十进制数字。

    例如:

    "0" => true

    " 0.1 " => true

    "abc" => false

    "1 a" => false

    "2e10" => true

    " -90e3   " => true

    " 1e" => false

    "e3" => false

    " 6e-1" => true

    " 99e2.5 " => false

    "53.5e93" => true

    " --6 " => false

    "-+3" => false

    "95a54e53" => false

    说明: 我们有意将问题陈述地比较模糊。在实现代码之前,你应当事先思考所有可能的情况。这里给出一份可能存在于有效十进制数字中的字符列表:

    数字 0-9

    指数 - "e"

    正/负号 - "+"/"-"

    小数点 - "."

    当然,在输入中,这些字符的上下文也很重要。

    二. 解题思路

    本题利用正则表达式来进行求解,将十进制数字的正则表达式模型写出来,然后进行匹配就行了,这道题的关键就是如何写正则表达式,可以进行学习。

    三. 执行结果

    执行用时 :21 ms, 在所有 java 提交中击败了25.46%的用户

    内存消耗 :36.7 MB, 在所有 java 提交中击败了88.37%的用户

    四. Java代码

    class Solution {
        public boolean isNumber(String s) {
                String line="^\s*[\+-]?((\d+(\.\d*)?)|\.\d+)([eE][\+-]?\d+)?\s*$";
            boolean isMatch =s.matches(line);
            return isMatch;
        }
    }
  • 相关阅读:
    .NET 4.6.1 给cookie添加属性
    Blog目录
    1019 数字黑洞
    1018 锤子剪刀布
    1017 A除以B
    1016 部分A+B
    1015 德才论
    1014 福尔摩斯的约会
    1013 数素数
    1012 数字分类
  • 原文地址:https://www.cnblogs.com/xiaobaidashu/p/11672049.html
Copyright © 2020-2023  润新知