Сводные таблицы правил транслитерации
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]1 |
| (всё остальное) | (пусто) |
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]1 |
| (всё остальное) | (пусто) |
3. BiDiTranslit: Взаимно-однозначный транслит
3.1. Выходные данные
- двустороннее взаимно-однозначное преобразование текста
- входной набор: [0–9a-zA-Zа-яА-Я\-_ ]
- выходной набор: [0–9a-zA-Z\-'_+]
- все символы, не включающиеся во входной набор, are omitted
3.2. Формальные правила
4. Приложения
4.1. [ 1 ] Односторонняя транслитерация кириллицы
абвгдезиклмнопрстуф
abvgdeziklmnoprstuf
Странности:
| Ё | e |
| Ж | zh |
| Й | j |
| Х | x |
| Ц | ts |
| Ч | ch |
| Ш | sh |
| Щ | sch |
| Ъ, Ь | (пусто), если перед согласной j, если перед гласной, однако не должно быть jj |
| Ы | y |
| Э | e |
| Ю | ju |
| Я | ja |
4.2. [ 2 ] Восстановимая транслитерация кириллицы
абвгдезиклмнопрстуф
abvgdeziklmnoprstuf
Странности:
| ё | jo |
| ж | zh |
| й | jj |
| х | kh |
| ц | c |
| ч | ch |
| ш | sh |
| щ | shh |
| э | eh |
| ю | ju |
| я | ja |
| ы | y |
| ъ | ~ (тильда) |
| ь | ' (апостроф) |
| Ъ | _~ |
| Ь | _' |
От
ГОСТ 16876–71 отличается транслитерацией мягкого и твёрдого знаков (отказ от знака дюйма для более простого представления в теле HTML-страниц).
Заглавные буквы
Оператор «плюс» — смена языка.