Alexander Kogan wrote: 

  >> 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 должен быть соответствующим
  > текущей локали.

Небольшая поправочка: meaning of range expression for regular
expressions matching.  С каких пор аргументы tr у нас считаются
регулярными выражениями?

tr в данном случае ведёт себя настолько правильно, насколько это
возможно -- тут даже обсуждать нечего. Реальная проблема у tr в другом
-- он ничего не знает про многобайтные символы (в ru_RU.UTF-8 не
заработает [:upper:] [:lower:]). И то непонятно, должен ли он это
уметь или нет....

-- 
Удачи!
        Антон Коваленко /* http://softlenin.chat.ru */
N┘
[EMAIL PROTECTED]       И ┼[huФБjzН╡х ·╥╙╧К-√+-╠в⌡┴╘Х╝
"╤╛╧╦чrз╨{.nг+┴╥⌠╝▀⌡∙Ю╗·ж°╤X╛╤f╛╣ЙЕ┼кluФБjz+

Ответить