当前位置:首页 >> 网页制作

html符号转实体算法挑战

挑战:

将字符串中的字符 &、<、>、" (双引号), 以及 ’ (单引号)转换为它们对应的 HTML 实体。

如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人交流编程思路、但编写你自己的代码。

例如:

           convert("Dolce & Gabbana") 应该返回 Dolce &​amp; Gabbana。
convert("Hamburgers < Pizza < Tacos") 应该返回 Hamburgers &​lt; Pizza &​lt; Tacos。  
            convert("Sixty > twelve") 应该返回 Sixty &​gt; twelve。
convert('Stuff in "quotation marks"') 应该返回 Stuff in &​quot;quotation marks&​quot;。
           convert("Shindler's List") 应该返回 Shindler&​apos;s List。
                        convert("<>") 应该返回 &​lt;&​gt;。
                 convert("abc") 应该返回 abc。

答案:

方法 描述 RegExp 是正则表达式(regular expression)的简写。     replace() 替换与正则表达式匹配的子串。     HTML 字符实体 HTML 中的预留字符必须被替换为字符实体。

function convert(str) {
 var list={
    "&":"&amp;",
    "<":"&lt;",
    ">":"&gt;",
    '"':"&quot;",
    "'":"&apos;",   
  };
  for(var key in list){
    str=str.replace(new RegExp(key,"g"),list[key]);
  }
  return str;
}

convert("Dolce & Gabbana");

运行结果:

Dolce & Gabbana

在线测试:

html符号转实体算法挑战 | w3cschool

总结

上一篇: HTMl 中marquee标签实现无缝滚动跑马灯效果
下一篇: html随意拖动内容位置的两种实现方式