
题目描述
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
示例
1、输入"123.45e+6"输出true2、输入"1.2.3"输出false
思路分析
在这个题目中,一定要注意的是题目需要我们做的是写一个函数来判断字符串表示数字。一看到这个题目的时候,可以看出对于这个题目用的就是正则表达式了。具体操作如下:
public static boolean isNumeric(String str) {// ^表示开头 $ 表示结尾 java中两个\\ 代表一个\// * 零次或多次匹配前面的字符或子表达式// ?零次或一次匹配前面的字符或子表达式// + 一次或多次匹配前面的字符或子表达式// [] 字符集。匹配包含的任一字符// (:? )匹配 pattern 但不捕获该匹配的子表达式,即它是一个非捕获匹配String p = "^[+-]?\\d*(?:\\.\\d*)?(?:[eE][+-]?\\d+)?$";return Pattern.matches(p,str);}
历史文章及资料
第四阶段:JDBC、Java8、JavaSE和Html&CSS
- THE END -
作者简介
Mr.W
白天搬砖,晚上砌梦想。
相信每个人有故事,程序员更是有许多事故,书写最接地气的程序员故事,为大家找出更好的资料。

文章转载自JAVA的学习之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





