#!/usr/bin/perl use strict; use locale; use encoding 'UTF-8'; use open ':utf8'; use open ':std'; sub 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\'/; s/[[:space:]]/_/g; s/\p{Pd}/-/g; s/…/.../g; s/[^-.,?!()\[\]_'\da-z]//gi; return $_; } while(<>) { chomp; print translit($_) . "\n"; } exit(0);