网站建设解决恩问题,桂林生活网官网首页,wordpress 数据库配置文件,如何设计产品网站建设题目
请实现一个函数用来判断字符串是否表示数值#xff08;包括整数和小数#xff09;。 数值#xff08;按顺序#xff09;可以分成以下几个部分#xff1a; 若干空格 一个 小数 或者 整数 #xff08;可选#xff09;一个 ‘e’ 或 ‘E’ #xff0c;后面跟着一个 …题目
请实现一个函数用来判断字符串是否表示数值包括整数和小数。 数值按顺序可以分成以下几个部分 若干空格 一个 小数 或者 整数 可选一个 ‘e’ 或 ‘E’ 后面跟着一个 整数 若干空格 小数按顺序可以分成以下几个部分 可选一个符号字符‘’ 或 ‘-’ 下述格式之一 至少一位数字后面跟着一个点 ‘.’ 至少一位数字后面跟着一个点 ‘.’ 后面再跟着至少一位数字 一个点 ‘.’ 后面跟着至少一位数字 整数按顺序可以分成以下几个部分 可选一个符号字符‘’ 或 ‘-’ 至少一位数字 部分数值列举如下 [“100”, “5e2”, “-123”, “3.1416”, “-1E-16”, “0123”] 部分非数值列举如下 [“12e”, “1a3.14”, “1.2.3”, “±5”, “12e5.4”]
解题思路
这题很简单直接使用正则匹配查看结果即可代码简单易懂 但是这里的效率也是最低的 可以使用有限状态机为最优解目前还在学习中 以下代码是正则匹配代码。
Java代码实现
import java.util.regex.Pattern;
public class IsNumber {public boolean isNumber(String s) {Pattern P Pattern.compile(\\s*[-]?((\\d*\\.?\\d)|(\\d\\.?))([eE][-]?\\d)?\\s*);return P.matcher(s).matches();}
}