首页 > 试题广场 > 表示数值的字符串
[编程题]表示数值的字符串
  • 热度指数:310437 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
示例1

输入

"123.45e+6"

输出

true
示例2

输入

"1.2.3"

输出

false
头像 朗基努斯
发表于 2019-08-23 15:38:08
来玩正则表达式吧!~ import java.util.regex.Pattern; public class Solution { public static boolean isNumeric(char[] str) { String pattern = "^[-+]? 展开全文
头像 中工升达预备毕业生
发表于 2019-09-28 21:41:57
思路:首先要想到所有的情况,然后进行分类讨论。-123.45e-67 +-号后面必定为数字或后面为.(-.123 = -0.123) +-号只出现在第一位或在eE的后一位 .后面必定为数字或为最后一位(233. = 233.0) eE后面必定为数字或+-号 public class Soluti 展开全文
头像 冰梦IceDream
发表于 2019-09-12 11:48:22
JavaScript代码实现如下: function isNumeric(s) { var reg = /^[\+-]?\d*\.?\d+(e[\+-]?\d+)?$/i; return reg.test(s); } 代码的解释如下: 首先,用 开头符 ^ 和 结尾符 $ 界定待匹 展开全文
头像 luye111
发表于 2020-04-18 19:45:38
抖个机灵。。。可以试一下可不可以转成float形式。。可以的话就是数值。。 -- coding:utf-8 -- class Solution: # s字符串 def isNumeric(self, s): # write code here try: 展开全文
头像 铁柱锈死了
发表于 2019-12-02 22:18:24
class Solution: # s字符串 def isNumeric(self, s): # write code here try: float(s) return True except: 展开全文
头像 pipitongkw2
发表于 2020-02-09 19:00:57
没有那么复杂,只是一个排除法的问题:(1)+,-只能放在首位或者E,e的后面(2)E或e,以及小数点只能出现一次,并且:在有E或者e的情况下,小数点不能在E,e后面出现(3)不能有除了数字,E,e,小数点,+,-之外的其他字符出现(4)e或E后面必须出现数字,如果后面是+或-,continue,继续 展开全文
头像 丶jack
发表于 2019-12-03 07:36:43
正则表达式容易疏忽的地方:1.底数不为空。如e8不是数字。2.数字整数部分小数部分不能同时为空。如.不是数字。 现在个人觉得最完善的正则: public class Solution { public boolean isNumeric(char[] str) { Strin 展开全文
头像 Iron欣
发表于 2020-04-28 16:17:05
题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。   方法不止2种,简单介绍一些我看懂了的 展开全文
头像 啊~我好菜啊
发表于 2019-09-20 20:51:44
53. 表示数值的字符串 题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 思路在遍历的时 展开全文
头像 wulimmya
发表于 2020-06-03 12:13:28
第一次正经八百地接触正则表达式,先看了半小时,摸到了一点感觉和苗头,明白了它是一种模式,模板,公式,也确实明白了它真的很有用,比如匹配邮箱什么的,很有意思,也稍微看了他的组件:普通字符和元字符。但是对元字符的掌握还很差,自己写不出来下面用到的正则表达式,是看的题解,别人用的Java,我虽然用cpp, 展开全文