There are many methods to change the register of the letters in a string. The first set contains simple lc and uc, which converts all characters to lower or upper case. Consider the following code snippet:
say 'String'.lc; # string say 'String'.uc; # STRING
The other four methods are more complex.
The fc method converts a string to the so-called fold case. It is intended to be used in string comparisons. For example, compare the output of the three methods called on a string with the German letter ?, which is spelled as SS in uppercase, but is converted to ss in the fold-case. Consider the following code snippet:
say 'Hello, Stra?e!'.lc; # hello, stra?e! say 'Hello, Stra?e!'.uc; # HELLO, STRASSE! say 'Hello, Stra?e!'.fc; # hello, strasse!
(Keep in mind that, since June 2017, the German language officially has the upper version of ?, we can know about that right here https://en.wikipedia.org/wiki/Capital_%E1%BA%9E. The behavior of the methods may change.)
The tc method converts a string to the so-called title case, where the first letter of the string is capital.
say 'hey, you'.tc; # Hey, you
Notice that, if the string already contains uppercase letters, they will remain as is:
say 'dear Mr. Johnson'.tc; # Dear Mr. Johnson
Use the tclc method to convert all the other letters to lowercase:
say 'HI THERE!'.tclc; # Hi there!
The wordcase method capitalizes the first character of each word and makes the rest lowercase: