Receives a string and returns a copy of this string with all
uppercase letters changed to lowercase. All other characters are
left unchanged.
Returns the substring of s that starts at i and continues until j; i
and j can be negative. If j is absent, it is assumed to be equal to
-1 (which is the same as the string length). In particular, the call
string.sub(s, 1, j) returns a prefix of s with length j, and
string.sub(s, -i) returns a suffix of s with length i.
Receives a string and returns a copy of this string with all
lowercase letters changed to uppercase. All other characters are
left unchanged.