Lingua-RU-PhTranslit

 view release on metacpan or  search on metacpan

PhTranslit.pm  view on Meta::CPAN

package Lingua::RU::PhTranslit;

=head1 NAME

Lingua::RU::PhTranslit -  Phonetic correct translit (for Cyrillic)

=head1 SYNOPSIS

  use Lingua::RU::PhTranslit

=head1 DESCRIPTION

The folowing functions include in this package

  koi2phtr, phtr2koi
  koi2win, win2koi
  koi2alt, alt2koi

 koi - KOI8-R
 win - Windows-1251, CP1251
 alt - CP866

sample script ------------------------------------------

 use Lingua::RU::PhTranslit;

 my $koi_string=" üÔÁ ÓÔÒÏÞËÁ ÎÁÐÉÓÁÎÁ ÒÕÓÓËÉÍÉ ÂÕËÏ×ËÁÍÉ";
 print koi2phtr("$koi_string\n");

script output ------------------------------------------
 E'ta strochka napisana russkimi bukovkami

-------------------------------------------------------

    Main appointment of this package is converting information during
export/import from/to mobile devices. On desktop computers this
problem is not actul now. Transform in this pacage is bidirectional.

P.S. Sorry for my English. It is not a native language for me.

=head1 History

    0.1  ()		- initial release;
    0.2  (2001-10-12) 	- correct "£³" in koi2win;
    0.3  (2003-03-28)	- missing test added;
    0.4  (2003-04-10	- add some documentation,
			  correct mistake with change $_ (thank's Sean M. Burke)

=cut

use strict;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);

require Exporter;

@ISA = qw(Exporter AutoLoader);
@EXPORT = qw( &koi2phtr &phtr2koi &koi2win &win2koi &koi2alt &alt2koi);
#@EXPORT_OK = qw();
$VERSION = '0.4';

sub koi2phtr
    { local ($_)=@_;

#
# koi8-r to Phonetic correct translit
#

s/óÈ/S\'h/; s/ÓÈ/s\'h/; s/óè/S\'H/;
s/û/Sh/g; s/Û/sh/g;

s/óÃÈ/Sc\'h/; s/ÓÃÈ/sc\'h/; s/óãè/SC\'H/;
s/ý/Sch/g; s/Ý/sch/g;

s/ãÈ/C\'h/; s/ÃÈ/c\'h/; s/ãè/C\'H/;
s/þ/Ch/g; s/Þ/ch/g;

s/êÁ/J\'a/; s/ÊÁ/j\'a/; s/êá/J\'A/;
s/ñ/Ja/g; s/Ñ/ja/g;

s/êÏ/J\'o/; s/ÊÏ/j\'o/; s/êï/J\'O/;
s/³/Jo/g; s/£/jo/g;

s/êÕ/J\'u/; s/ÊÕ/j\'u/; s/êõ/J\'U/;
s/à/Ju/g; s/À/ju/g;

s/ü/E\'/g; s/Ü/e\'/g;
s/å/E/g; s/Å/e/g;

s/úÈ/Z\'h/g; s/ÚÈ/z\'h/g; s/úè/Z\'H/g;
s/ö/Zh/g; s/Ö/zh/g;

tr/
ÁÂ×ÇÄÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃßÙØáâ÷çäúéêëìíîïðòóôõæèãÿùø/
abvgdzijklmnoprstufhc\"y\'ABVGDZIJKLMNOPRSTUFHC\"Y\'/;

return $_;



( run in 0.927 second using v1.01-cache-2.11-cpan-39bf76dae61 )