Обратите внимание, что этот вопрос такой же, как this.
Это то же самое, что и this PHP question, но я ищу эквивалент haskell.Как декодировать строку с закодированным словом?
RFC 2047 определяет стандарт «зашифровано-слово» кодировки и дает пример:
=?iso-8859-1?q?this=20is=20some=20text?=
Есть ли стандартная библиотека Haskell для решения декодирования этого в него правильно Text
представлении?
Это не должно быть слишком сложно для написания пользовательского парсера с использованием парсека и RFC Spec, но это похоже на общую проблему с решеткой на других языках, на которую я не могу найти эквивалент Haskell, и я бы предпочел не пересоздайте колесо здесь.
взглянуть на [мим] пакет (https://hackage.haskell.org/package/mime) , – ErikR
@ErikR Если есть что-то, что мне там не хватает, оно не обрабатывает этот тип кодирования. Codec.MIME.Decode явно указывает: «В настоящее время поддерживаются только два поддерживаемых кодировки base64 и quoted-printable». Таким образом, это превратило бы мой пример в «=? Iso-8859-1? Q? Это некоторый текст? =», А не «это какой-то текст». Это определенно работоспособно, но тогда вам нужно снять лишние символы. Также он оставляет только «_», что является допустимым представлением кодированного слова для «» – jkeuhlen
. Посмотрите код для [decodeWord] (https://hackage.haskell.org/package/mime-0.4.0.2/docs/ SRC/кодек-MIME-Decode.html # decodeWord). Несмотря на отсутствие документов, похоже, что существует поддержка iso-8859-1. – ErikR