查看: 2442|回复: 3

[已经解决] 正则表达式如何匹配小数

[复制链接]
梦石
0
星屑
1422
在线时间
137 小时
注册时间
2018-5-28
回帖
42
发表于 2019-2-20 22:19:25 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
如题,整数我已经会了,使用 (\d+) 即可。小数要怎么做?
梦石
0
星屑
2605
在线时间
896 小时
注册时间
2011-4-30
回帖
108

开拓者

发表于 2019-2-21 03:16:03 | 显示全部楼层
$re_float = /[-+]?(?:[0-9]+(\.[0-9]*)?|(\.[0-9]+))([eE][-+]?[0-9]+)?/

p $re_float =~ "1.23"    # => 0
p $&.to_f                # => 1.23
p $re_float =~ ".23"     # => 0
p $&.to_f                # => 0.23
p $re_float =~ "1.23e1"  # => 0
p $&.to_f                # => 12.3
p $re_float =~ "1.23e-1" # => 0
p $&.to_f                # => 0.123

评分

参与人数 1星屑 +70 赞 +1 收起 理由
RyanBern + 70 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
14720
在线时间
2175 小时
注册时间
2016-9-20
回帖
777
发表于 2019-2-21 10:01:02 | 显示全部楼层
33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+
28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
网上找的错了別打我
贴子只供参考我贴子内容有很多只是我自己标识的内容代指不是原来意思,偏向发贴当时的想法(后来回看贴发现有很多错误,会造成误导 ),如果想靠谱点应 找相关正确的文章   -- 2025/4/19
回复

使用道具 举报

梦石
0
星屑
1422
在线时间
137 小时
注册时间
2018-5-28
回帖
42
 楼主| 发表于 2019-2-21 22:06:09 | 显示全部楼层
好的谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部