sed: Locale Considerations

 
 5.9 Locale Considerations
 =========================
 
 TODO: fix following paragraphs (copied verbatim from 'bracket
 expression' section).
 
    TODO: mention locale support is heavily dependent on the OS/libc, not
 on sed.
 
    The current locale affects the characters matched by 'sed''s regular
 expressions.
 
    In other locales, the sorting sequence is not specified, and '[a-d]'
 might be equivalent to '[abcd]' or to '[aBbCcDd]', or it might fail to
 match any character, or the set of characters that it matches might even
 be erratic.  To obtain the traditional interpretation of bracket
 expressions, you can use the 'C' locale by setting the 'LC_ALL'
 environment variable to the value 'C'.
 
      # TODO: is there any real-world system/locale where 'A'
      #       is replaced by '-' ?
      $ echo A | sed 's/[a-z]/-/'
      A
 
    Their interpretation depends on the 'LC_CTYPE' locale; for example,
 '[[:alnum:]]' means the character class of numbers and letters in the
 current locale.
 
    TODO: show example of collation
 
      # TODO: this works on glibc systems, not on musl-libc/freebsd/macosx.
      $ printf 'cliché\n' | LC_ALL=fr_FR.utf8 sed 's/[[=e=]]/X/g'
      clichX