Цель действительно проста. Получив строку в качестве входных данных, проанализируйте все объекты HTML, которые соответствуют следующим символам (включая их заглавные варианты):
áàãâäéèêëíìîïóòõôöúùûüýÿ
Правила разбора:
- Каждая сущность начинается с
&
и заканчивается;
- Первый символ после
&
будет измененным символом (регистр букв важен!) - Остальные символы обозначают название акцента использовать (
acute
,grave
,circ
,tilde
иuml
). Название акцента ДОЛЖНО быть в нижнем регистре! * - Любой объект HTML, который создает символ, которого нет в этом списке или который является недопустимым, следует оставить нетронутым (например
&
,&etilde;
,&a;
) - Числовые объекты следует игнорировать, так как они не соответствуют приведенным выше правилам.
Это изменение было введено с 18-02-2016. Все существующие ответы, которые принимают объекты HTML с именами в верхнем регистре, действительны. Любой будущий ответ должен следовать этому правилу.
Примеры:
á //á
Téhèh //Téhèh
an & //an &
Выход:
Выход может быть в ISO-8859- X (1-15), Windows-1252 или UTF-8/16/32.
Вы можете выбрать одну и только одну из допустимых кодировок и использовать ее для любого вывода. Вы можете смело предположить, что вход будет в ASCII.
Любое из следующего является допустимым выводом для á
:
á
(ISO-8859-1 / 15 или windows-1252, эквивалентно\xE1
)á
(UTF-8, эквивалентный\xC3\xA1
или\u00E1
)aÌ
(UTF-8, эквивалентныйa\xCC\x81
илиa\u0301
)- Любая комбинация диакритических знаков без использования HTML-сущностей.
Вывод должен быть визуально похожим, при визуализации / отображении, на символы в списке.
Помните, что все стандартные лазейки и встроенные модули * запрещены . Так как это код-гольф , выигрывает самый короткий ответ.
* Это изменение было внесено из-за большого неодобрения бонусов и штрафов, и на момент написания не отменял никакого ответа