Модуль:DecodeEncode

{{i}} Документація модуля]

Модуль для виклику функцій mw.text.decode, mw.text.encode. Копія з АнглВікі.

{{#invoke:decodeEncode|decode|s=Source text©}}Source text©

Дивіться Список позначень символів у XML та HTML.

Функція decode (© → ©)

Декодує іменований символ from у звичайний символ into:
©©
>>
Наприклад, речення:
"Вода закипає при температурі 100 °C"
В коді:
Вода закипає при температурі 100 °C - вікітекст
Результат декодування:
{{#invoke:decodeEncode|decode|s=Вода закипає при температурі 100 °C}}
Вода закипає при температурі 100 °C

Мінімальне декодування

Якщо задати параметр |subset_only=true, тільки 5 символів буде опрацьовано: &lt;, &gt;, &amp;, &quot;, &nbsp; (<, >, &, " та нерозривний пробіл).

Функція encode (© → &copy;)

encode закодовує звичайні символи у іменовані (наприклад: &&amp;).

Regular sentence:

Вода закипає при температурі 100 °C

У коді:

Вода закипає при температурі 100 °C

Результат кодування:

{{#invoke:decodeEncode|encode|s=Вода закипає при температурі 100 °C|charset=&<>{{!}}°"'&©}}
Вода закипає при температурі 100 &#176;C


Закодовані символі

За промовчанням, тільки невеликий набір символів опрацьовуються. Його можна розширити параметром |charset=.

Наприклад: |charset=<>" \'& (за промовчанням), |charset=<>°"'&©{{!}}; нестандартні символи буде замінено десятковими позначеннями: ©&#169;

Див. також

require('strict')local p = {}local function _getBoolean( boolean_str )-- from: module:String; adapted-- requires an explicit truelocal boolean_valueif type( boolean_str ) == 'string' thenboolean_str = boolean_str:lower()if boolean_str == 'true' or boolean_str == 'yes' or boolean_str == '1' thenboolean_value = trueelseboolean_value = falseendelseif type( boolean_str ) == 'boolean' thenboolean_value = boolean_strelseboolean_value = falseendreturn boolean_valueendfunction p.decode( frame )local s = frame.args['s'] or ''local subset_only = _getBoolean(frame.args['subset_only'] or false)return p._decode( s, subset_only )endfunction p._decode( s, subset_only )-- U+2009 THIN SPACE: workaround for bug: HTML entity &thinsp; is decoded incorrect. Entity &ThinSpace; gets decoded properlys = mw.ustring.gsub( s, '&thinsp;', '&ThinSpace;' )-- U+03B5 ε GREEK SMALL LETTER EPSILON: workaround for bug (phab:T328840): HTML entity &epsilon; is decoded incorrect for gsub(). Entity &epsi; gets decoded properlys = mw.ustring.gsub( s, '&epsilon;', '&epsi;' )local ret = mw.text.decode( s, not subset_only )return retendfunction p.encode( frame )local s = frame.args['s'] or ''local charset = frame.args['charset']return p._encode( s, charset )endfunction p._encode( s, charset )-- example: charset = '_&©−°\\\"\'\=' -- do escape with backslash not %;local retif charset and charset ~= '' thenret = mw.text.encode( s, charset )else-- use default: chartset = '<>&"\' ' (outer quotes = lua required; space = NBSP)ret = mw.text.encode( s )end return retendreturn p
🔥 Top keywords: Головна сторінкаЧемпіонат Європи з футболу 2024Спеціальна:ПошукВікіпедія:Культурна спадщина та видатні постаті (2024)Збірна України з футболуБріджертониЧемпіонат Європи з футболу 2020YouTubeУкраїнаЧемпіонат Європи з футболуЗбірна Румунії з футболуРебров Сергій СтаніславовичГлобальний саміт мируРадіо «Свобода»ДефолтРумуніяЛунін Андрій ОлексійовичНаціональна суспільна телерадіокомпанія УкраїниДень батькаДовбик Артем ОлександровичШевченко Андрій МиколайовичЯрмоленко Андрій МиколайовичЧемпіонат Європи з футболу 2024 (кваліфікаційний раунд)Мудрик Михайло Петрович138-ма зенітна ракетна бригада (Україна)FacebookЄрмак Андрій БорисовичСексВійськові звання України22-га окрема механізована бригада (Україна)Зінченко Олександр ВолодимировичТериторіальний центр комплектування та соціальної підтримкиДумками навиворіт 2Чемпіонат Європи з футболу 2016Список операторів систем розподілу України2024 у телебаченніMegogoСписок українських жіночих іменКиїв