2015-06-09 89 views
-3

如何从下面的数组中提取每个单独的IP地址?提取单独的IP地址

strList = ["10.5.5.5 - 10.5.5.8"] 

最终的结果应该是这样的:

newList = ["10.5.5.5","10.5.5.6","10.5.5.7","10.5.5.8"] 

难道你们有什么想法?

+2

这不是一个问题。告诉我们你写的一种方法,我们会告诉你什么可以改进 –

+0

更好,但仍然存在问题。 'strList'是一个包含一个字符串的数组。更好的是,imo是这样说的:“生成从”10.5.5.5“到”10.5.5.8“的所有地址(包括端点)。”最终结果“是四个字符串,它不是Ruby对象。这些改变会阻止downvotes,也许有一些撤回,当你看到它时,我会删除这条评论。 –

+1

这个问题与http://stackoverflow.com/questions/30650295/有什么不同? count-ip-addresses?请不要问同样的问题或者非常相似的问题,而应该提供所提供的答案,并将这些信息应用到自己的代码中。这个问题,请这样做,而不是要求我们为你写信 –

回答

3

你能做到这一点,如下所示:

require 'ipaddr' 

(IPAddr.new("10.5.5.5")..IPAddr.new("10.5.5.8")).map(&:to_s) 
    #=> ["10.5.5.5", "10.5.5.6", "10.5.5.7", "10.5.5.8]