2015-06-09 3 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] 
Смежные вопросы