.B ^
then any character not enclosed is matched.
The sorting order of characters in range expressions is determined by
-the current locale and the value of the
+the current locale and the values of the
.SM
.B LC_COLLATE
-shell variable,
-if set.
+or
+.SM
+.B LC_ALL
+shell variables, if set.
+To obtain the traditional interpretation of range expressions, where
+.B [a\-d]
+is equivalent to
+.BR [abcd] ,
+set value of the
+.B LC_ALL
+shell variable to
+.BR C .
A
.B \-
may be matched by including it as the first or last character
in the set. A @samp{]} may be matched by including it as the first
character in the set.
The sorting order of characters in range expressions is determined by
-the current locale and the value of the @env{LC_COLLATE} shell variable,
-if set.
+the current locale and the values of the
+@env{LC_COLLATE} and @env{LC_ALL} shell variables, if set.
For example, in the default C locale, @samp{[a-dx-z]} is equivalent to
@samp{[abcdxyz]}. Many locales sort characters in dictionary order, and in