Используя Perl, я пытаюсь прописать слова с ударением и специальные символы с lc(), но не могу.
lc()
Например:
É UM MAÇO
1010 * возвращается *
ЭМ МАГО
-bash$ perl -we 'use utf8; binmode STDOUT, ":utf8"; print lc "É UM MAÇO"' é um maço
utf8 означает, что текст вашей программы в кодировке Unicode.binmode обеспечивает правильный вывод широких символов.
utf8
binmode
Вы также можете use Encode;, см. документы .
use Encode;
Попробуйте добавить
use locale;
в ваш скрипт.Это должно заставить различные функции, включая lc работать с акцентами.Скрипт полного тестирования:
lc
use strict; use warnings; use locale; use utf8; print lc('É UM MAÇO'); # gives "é um maço"
Вы смотрели на это http://perldoc.perl.org/functions/lc.html и убедились, что все ваши настройки настроены правильно.Также было бы хорошо опубликовать минимальный код для воспроизведения эффекта.