测试字符串是否是数字
如何测试字符串是否仅由数字组成?
How to test if a string is composed only of digits ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何测试字符串是否仅由数字组成?
How to test if a string is composed only of digits ?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
例如,使用 re 模块:
或者,使用列表理解:
请注意,解决方案将认为空列表有效输入。
For example, using the re module:
Or, using list comprehension:
Note that both solutions will consider the empty list valid input.
使用正则表达式。
Use a regular expression.
不过,在生产中,我同意 list_to_integer,因为它可能得到了更好的优化。我不确定“any”和“all”是否有不同的遍历特性 - 您可以根据另一个来实现它们,但它们可能都是用 C 实现的。
In production, though, I would agree with the list_to_integer as it's probably better optimized. I'm not sure whether there are different traversal characteristics on 'any' vs 'all' either - you could implement each of them in terms of the other, but they're probably both implemented in C.
https://rosettacode.org/wiki/Determine_if_a_string_is_numeric#Erlang
https://rosettacode.org/wiki/Determine_if_a_string_is_numeric#Erlang
一种方法是将其转换为整数,如果失败,那么您就会知道它不是整数。
或者您可以只检查所有数字,但您必须检查空列表的边缘情况:
One way is to convert it to an integer and if that fails then you'll know it's not an integer.
Or you can just check all of the digits, but you do have to check the edge case of an empty list: