std/unidecode
Source EditЭтот модуль основан на модуле Python Unidecode от Tomaz Solc, который, в свою очередь, основан на модуле Perl Text::Unidecode от Sean M. Burke.
Он предоставляет процедуру unidecode, которая выполняет транслитерацию Unicode в ASCII: она находит последовательность символов ASCII, которая является наиболее близким приближением к строке Unicode.
Например, наиболее близким к строке "Äußerst" в ASCII является "Ausserst". Конечно, в этом преобразовании теряется некоторая информация, поскольку несколько строк Unicode могут быть преобразованы в одно и то же представление ASCII. Поэтому это строго однонаправленное преобразование. Однако читатель, скорее всего, сможет догадаться из контекста, какой была исходная строка.
Для работы этому модулю необходим файл данных unidecode.dat: по умолчанию этот файл встроен в ваше приложение в качестве ресурса. Вы также можете определить символ --define:noUnidecodeTable во время компиляции и использовать процедуру loadUnidecodeTable для инициализации этого модуля.
Импорты
- unicode, strutils
Процедуры
proc loadUnidecodeTable(datafile = "unidecode.dat") {....raises: [], tags: [], forbids: [].}- Загружает файл данных, необходимый процедуре unidecode для работы. Это требуется только в том случае, если модуль был скомпилирован с использованием переключателя
--define:noUnidecodeTable. Его необходимо вызвать в главном потоке перед тем, как любой другой поток сможет вызватьunidecode. Source Edit
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/unidecode.html