You are viewing the version of this documentation from Perl 5.28.1. View the latest version
fc EXPR
fc

Returns the casefolded version of EXPR. This is the internal function implementing the \F escape in double-quoted strings.

Casefolding is the process of mapping strings to a form where case differences are erased; comparing two strings in their casefolded form is effectively a way of asking if two strings are equal, regardless of case.

Roughly, if you ever found yourself writing this

lc($this) eq lc($that)    # Wrong!
    # or
uc($this) eq uc($that)    # Also wrong!
    # or
$this =~ /^\Q$that\E\z/i  # Right!

Now you can write

fc($this) eq fc($that)

And get the correct results.

Perl only implements the full form of casefolding, but you can access the simple folds using "casefold()" in Unicode::UCD and "prop_invmap()" in Unicode::UCD. For further information on casefolding, refer to the Unicode Standard, specifically sections 3.13 Default Case Operations, 4.2 Case-Normative, and 5.18 Case Mappings, available at http://www.unicode.org/versions/latest/, as well as the Case Charts available at http://www.unicode.org/charts/case/.

If EXPR is omitted, uses $_.

This function behaves the same way under various pragmas, such as within