ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[Perl] ucfirst в кириллице
  #1  
Старый 04.05.2010, 07:35
Аватар для apofis
apofis
Познающий
Регистрация: 23.02.2009
Сообщений: 35
Провел на форуме:
267868

Репутация: 0
По умолчанию [Perl] ucfirst в кириллице

Как можно использовать ucfirst с русским текстом?
 
Ответить с цитированием

  #2  
Старый 04.05.2010, 07:43
Аватар для krypt3r
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме:
3660186

Репутация: 905


По умолчанию

use utf8;
 
Ответить с цитированием

  #3  
Старый 04.05.2010, 08:40
Аватар для apofis
apofis
Познающий
Регистрация: 23.02.2009
Сообщений: 35
Провел на форуме:
267868

Репутация: 0
По умолчанию

Если текст брать из файла, то не получается.
Например, если создать текстовый файл с текстом: тестовое слово (и сохранить по умолчанию в кодировке ANSI), то в итоге получается такой текст: тҐ±Іовое слово. Если же созданный текстовый файл сохранить в UTF8, то никаких изменений не происходит вообще.

Код такой:

Код:
use open ":utf8";
use utf8;
open (FILE, '<slovo.txt');
@slovo = <FILE>;
close FILE;
$text = ucfirst"@slovo";
print $text;
open f, ">ucfirsted.txt";
print f "$text\n";
close f;
<STDIN>;
 
Ответить с цитированием

  #4  
Старый 04.05.2010, 09:20
Аватар для krypt3r
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме:
3660186

Репутация: 905


По умолчанию

Вы для начала с кодировкой определитесь. У вас прагмы для utf8, а открываете файл в цп1251
Исходный текст
Код:
тестовое слово
текст брать из файла
не получается
файл с текстом
UTF-8
Код:
#!/usr/bin/perl

use strict;
use warnings;
use utf8;
use open qw /:utf8 :std/;

$\ = "\n";
open my $F, '<', '82_utf8.txt' or die "open error: $!";
chomp (my @lines = <$F>);
close $F;
@lines = map {ucfirst $_} @lines;
print join ' : ', @lines;
Вывод
Код:
Тестовое слово : Текст брать из файла : Не получается : Файл с текстом
ЗЫ. Если у вас все же кодировка CP1251, то ее и стоит указать либо в прагме open, либо при открытии файла
Код:
use open ':encoding(cp1251)';
open my $FILE, '<:encoding(cp1251)', 'file.txt';
 
Ответить с цитированием

  #5  
Старый 04.05.2010, 09:41
Аватар для apofis
apofis
Познающий
Регистрация: 23.02.2009
Сообщений: 35
Провел на форуме:
267868

Репутация: 0
По умолчанию

Цитата:
Сообщение от krypt3r  
Код:
use open ':encoding(cp1251)';
Спасибо)
Так работает
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хостинг с потдержкой доменов на кириллице?! petryxa Болталка 15 30.11.2009 00:01
Кому нужны домены на кириллице jerrri Мировые новости 47 10.11.2009 12:48
В доменной зоне .EU можно будет регистрировать имена на кириллице AONE1 Мировые новости 2 26.06.2009 20:30
[PERL] скрипты для MirTesen.Ru Gaus Покупка, продажа, услуги в Соц. Сетях 3 03.05.2009 10:11
Brute admin password [perl] Звeрь PHP, PERL, MySQL, JavaScript 7 02.02.2009 13:01



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ