目标真的很简单。接收字符串作为输入,解析与以下字符(包括它们的大写变体)相对应的所有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实体的变音符号的任意组合。
呈现/显示时,输出必须在视觉上类似于列表中的字符。
请记住,所有标准漏洞和内置 *都是不允许的。由于这是代码高尔夫球,因此最短的答案将获胜。
*做出此更改是由于奖金和罚款的严重不当,并且在撰写本文时不会使任何答案无效