目标真的很简单。接收字符串作为输入,解析与以下字符(包括它们的大写变体)相对应的所有HTML实体:
áàãâäéèêëíìîïóòõôöúùûüýÿ
解析规则:
- 每个实体都以开头
&
和结尾;
- 之后的第一个字符
&
将是修改后的字符(大写字母很重要!) - 其余字符是指口音的名字就使用(
acute
,grave
,circ
,tilde
和uml
)。重音名称必须为小写!* - 产生一个字符,则不在此列,或者是无效的任何HTML实体,应保持不变(如:
&
,&etilde;
,&a;
) - 数字实体应被忽略,因为它们不符合上述规则
此更改自2016年2月18日开始引入。接受带有大写重音符号的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实体的变音符号的任意组合。
呈现/显示时,输出必须在视觉上类似于列表中的字符。
请记住,所有标准漏洞和内置 *都是不允许的。由于这是代码高尔夫球,因此最短的答案将获胜。
*做出此更改是由于奖金和罚款的严重不当,并且在撰写本文时不会使任何答案无效