Сводный таблицы правил транслитерации
1. UrlTranslit: Красивый читаемый урл
1.1. Выходные данные
- используемый набор:
[0–9a-z_\-] - все буквы маленькие
- слова разделены подчёркиванием
- не встречается два подчёркивания подряд
- не встречается
_-_ - UrlTranslit(~UrlTranslit(string)) == UrlTranslit(string)
1.2. Формальные правила
[_\s\.,?!\[\](){}]+ |
_ |
aaa_-+_bbb |
aaa--bbb |
-{2,} |
-- |
-+$ |
(пусто) |
[A-ZА-Я] |
[a-zа-я] |
[а-я] |
[a-z] |
(всё остальное) |
(пусто) |
2. Supertag: Короткий однозначный идентификатор
2.1. Выходные данные
- используемый набор:
[0–9a-z\-] - Supertag(Supertag(string)) == Supertag(string)
- Supertag(UrlTranslit(string)) == Supertag(string)
2.2. Формальные правила
-{2,} |
- |
-+$ |
(пусто) |
[A-ZА-Я] |
[a-zа-я] |
[а-я] |
[a-z] |
(всё остальное) |
(пусто) |
3. BiDiTranslit: Взаимно-однозначный транслит
3.1. Выходные данные
- двустороннее взаимно-однозначное преобразование текста
- входной набор:
[0–9a-zA-Zа-яА-Я\-_ ] - выходной набор:
[0–9a-zA-Z\-'_+] - все символы, не включающиеся во входной набор, are omitted
3.2. Формальные правила
[а-яА-Я+] |
[a-zA-Z+] |
4. Приложения
4.1. Односторонняя транслитерация кириллицы
абвгдезиклмнопрстуфabvgdeziklmnoprstufСтранности:
Ё |
e |
Ж |
zh |
Й |
j |
Х |
x |
Ц |
ts |
Ч |
ch |
Ш |
sh |
Щ |
sch |
Ъ, Ь |
(пусто), если перед согласнойj, если перед гласной, однако не должно быть jj |
Ы |
y |
Э |
e |
Ю |
ju |
Я |
ja |
4.2. Восстановимая транслитерация кириллицы
абвгдезиклмнопрстуфabvgdeziklmnoprstufСтранности:
ё |
jo |
ж |
zh |
й |
jj |
х |
kh |
ц |
c |
ч |
ch |
ш |
sh |
щ |
shh |
э |
eh |
ю |
ju |
я |
ja |
ы |
y |
ъ |
~ (тильда) |
ь |
' (апостроф) |
Ъ |
_~ |
Ь |
_' |
От ГОСТ 16876–71[link1] отличается транслитерацией мягкого и твёрдого знаков (отказ от знака дюйма для более простого представления в теле HTML-страниц).
Заглавные буквы
Ж |
Zh |
Shh |
Щ |
Оператор «плюс» — смена языка
- [link1] http://replay.waybackmachine.org/20080509025329/http://www.spelling.spb.ru/spell057.htm