Ruby: extraindo apenas letras maiúsculas de uma string

Recentemente eu estava trabalhando em um projeto que me pedia para extrair as letras maiúsculas de uma string e, em uma ou outra, manipular essas letras.

Então, para fazer isso facilmente, simplesmente estendendo o objeto String Ruby fazendo o seguinte

class String
def extract_upper_case_letters
self.scan /p{Upper}/
end
end

# Implementation
str
= "Hello World"
letters
= str.extract_upper_case_letters
# ["H", "W"]