Hi!

> > [EMAIL PROTECTED]:~% echo $LANG
> > ru_RU.KOI8-R
> > [EMAIL PROTECTED]:~% echo опечатка| tr а-я А-Я
> > ОПЕчАтКА
> > [EMAIL PROTECTED]:~%
> >
> > И это при том, что
> > [EMAIL PROTECTED]:~% echo опечатка| tr '[:lower:]' '[:upper:]'
> > ОПЕЧАТКА
> > [EMAIL PROTECTED]:~%
>
> IMHO:
> Последний пример показывает, что tr про локаль что положено знает.
> А выражения вида a-z всегда обозначают список символов с кодами
> <a>,<a+1>,<a+2>,...,<z> и с установками локали не кореллируют.

Смотрим ман на setlocale

       LC_COLLATE
              for regular expression matching (it determines the meaning  of
              range  expressions  and equivalence classes) and string colla-
              ^^^^^^^^^^^^^^

Так что meaning of range expression должен быть соответствующим текущей 
локали.

-- 
Alexander Kogan
AutoWave Processes Group
Institute of Applied Physics RAS


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Ответить