Программирование > Perl

Как поменять набор букв на другой набор букв?

(1/1)

chouck:
Как поменять набор букв на другой набор букв? Причем некоторые буквы надо преобразовать одну буквы в две(например при перекодировке Win->Latinica \'Ч\' -> \'СH\'...) .
Вот как мне кажется что-то похожее , но оно не работает так как надо.
 $cur =~ tr/абвгдежзийклмнопрстуфхцчшщьыъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ/abvgde(zh)zijklmnoprstufxc[ch][sh][sh]\'y\'[e\'][yu][ya]ABVGDE[ZH]ZIJKLMNOPRSTUFXC[CH][SH][SH]\'Y\'[E\'][YU][YA]/;

AliMamed:
я сделал через массивы

chouck:

--- Цитировать ---AliMamed (18-04-2001 12:05):
я сделал через массивы
--- Конец цитаты ---

Как (пример)?

AliMamed:
$stroka="321";
@search=("1", "2","3");
@replace=("01","02","03");
for($i=0;$i

chouck:
$cur =~ tr/БВЧЗДЕЪЙКЛМНОПРТУФХЖИГШЩЯЬбвчздеъйклмнопртуфхжигшщяь/abvgdezijklmnoprstufxc\'y\'eABVGDEZIJKLMNOPRSTUFXC\'Y\'E/;
 $cur =~ s{Ц}{zh}g;
 $cur =~ s{ц}{ZH}g;
 $cur =~ s{Ы}{sh}g;
 $cur =~ s{ы}{SH}g;
 $cur =~ s{Э}{sh}g;
 $cur =~ s{э}{SH}g;
 $cur =~ s{Ю}{ch}g;
 $cur =~ s{ю}{CH}g;
 $cur =~ s{С}{ya}g;
 $cur =~ s{с}{YA}g;
 $cur =~ s{А}{yu}g;
 $cur =~ s{а}{YU}g;
 $cur =~ s{б}{yu}g;
 $cur =~ s{Б}{YU}g;

Навигация

[0] Главная страница сообщений

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии