def caesar_cipher(str, key)
str1 = str.split(//)
arr = []
str1.each do |ch|
temp = ch
if (/\w/.match(temp))
key.times do
if (/[^zZ]/.match(temp))
temp.next!
elsif (/[z]/.match(temp))
temp = "a"
elsif (/[Z]/.match(temp))
temp = "A"
end
end
end
arr << temp
end
arr.join
end
puts caesar_cipher("What a string!", 5)
ZGVmIGNhZXNhcl9jaXBoZXIoc3RyLCBrZXkpCglzdHIxID0gc3RyLnNwbGl0KC8vKQoJYXJyID0gW10KCXN0cjEuZWFjaCBkbyB8Y2h8CgkJdGVtcCA9IGNoCgkJaWYgKC9cdy8ubWF0Y2godGVtcCkpCQoJCQlrZXkudGltZXMgZG8KCQkJCWlmICgvW156Wl0vLm1hdGNoKHRlbXApKQoJCQkJCXRlbXAubmV4dCEKCQkJCWVsc2lmICgvW3pdLy5tYXRjaCh0ZW1wKSkKCQkJCQl0ZW1wID0gImEiCgkJCQllbHNpZiAoL1taXS8ubWF0Y2godGVtcCkpCgkJCQkJdGVtcCA9ICJBIgoJCQkJZW5kCgkJCWVuZAoJCWVuZAoJCWFyciA8PCB0ZW1wCgllbmQKCWFyci5qb2luCmVuZAoKcHV0cyBjYWVzYXJfY2lwaGVyKCJXaGF0IGEgc3RyaW5nISIsIDUp