The transformation is specified as a lambda (see Section 6.9, page 229), which converts the elements of the string (the characters) to lower- or uppercase. Note that tolower() and toupper() are old C functions that use the global locale. If you have a different locale or more than one locale