class ActiveSupport::Multibyte::Chars

def split(*args)

'Café périferôl'.mb_chars.split(/é/).map { |part| part.upcase.to_s } # => ["CAF", " P", "RIFERÔL"]

chaining methods easier.
in the resulting list are Chars instances instead of String. This makes
Works just like String#split, with the exception that the items
def split(*args)
  @wrapped_string.split(*args).map { |i| self.class.new(i) }
end