input = AA-AA-AA-AA-AA-AA
我如何
:
.
答案 0 :(得分:5)
input.gsub("-").with_index(1){|_, i| i.odd? ? ":" : "."}
# => "AA:AA.AA:AA.AA:AA"
答案 1 :(得分:1)
这是一种方式,虽然它不是您可能正在寻找的单线:
input = 'AA-AA-AA-AA-AA-AA'
input.count('-').times do |i|
replacement = i.even? ? ':' : '.'
input.sub!('-', replacement)
end
input
# => "AA:AA.AA:AA.AA:AA"
答案 2 :(得分:0)
input = "AA-AA-AA-AA-AA-AA".gsub("AA-AA", ":-.")
也许?