当前位置: 首页 > article >正文

html中几个符号的转义和还原

将str中的html符号转义,将转义“',&,<,",>,”,“”七个字符

 /**
     * 将str中的html符号转义,将转义“',&,<,",>,”,“”七个字符
     * @method unhtml
     * @param { String } str 需要转义的字符串
     * @return { String } 转义后的字符串
     * @example
     * ```javascript
     * var html = '<body>&</body>';
     *
     * //output: &lt;body&gt;&amp;&lt;/body&gt;
     * console.log( UE.utils.unhtml( html ) );
     *
     * ```
     */
  unhtml: function(str, reg) {
    return str
      ? str.replace(
          reg || /[&<">'](?:(amp|lt|ldquo|rdquo|quot|gt|#39|nbsp|#\d+);)?/g,
          function(a, b) {
            if (b) {
              return a;
            } else {
              return {
                "<": "&lt;",
                "&": "&amp;",
                '"': "&quot;",
                "“": "&ldquo;",
                "”": "&rdquo;",
                ">": "&gt;",
                "'": "&#39;"
              }[a];
            }
          }
        )
      : "";
  }

将str中的转义字符还原成html字符

/**
     * 将str中的转义字符还原成html字符
     * @see UE.utils.unhtml(String);
     * @method html
     * @param { String } str 需要逆转义的字符串
     * @return { String } 逆转义后的字符串
     * @example
     * ```javascript
     *
     * var str = '&lt;body&gt;&amp;&lt;/body&gt;';
     *
     * //output: <body>&</body>
     * console.log( UE.utils.html( str ) );
     *
     * ```
     */
  html: function(str) {
    return str
      ? str.replace(/&((g|l|quo|ldquo|rdquo)t|amp|#39|nbsp);/g, function(m) {
          return {
            "&lt;": "<",
            "&amp;": "&",
            "&quot;": '"',
            "&ldquo;": "“",
            "&rdquo;": "”",
            "&gt;": ">",
            "&#39;": "'",
            "&nbsp;": " "
          }[m];
        })
      : "";
  },


http://www.kler.cn/a/573016.html

相关文章:

  • LeetCode 79: 单词搜索 (Word Search)
  • C++11中atomic
  • 【SpringBoot】一文讲懂什么是scanBasePackages
  • [MySQL初阶]MySQL(3)表的约束
  • 华为最新OD机试真题-计算堆栈中的剩余数字-Python-OD统一考试(E卷)
  • C语言学习笔记-进阶(1)深入理解指针3
  • Ollama+AnythingLLM安装
  • 期权有哪些用处?期权和期货比优势在哪?
  • CentOS 7 安装 Redis6.2.6
  • R语言绘图:韦恩图
  • 06. View工作原理
  • 《HarmonyOS赋能的智能影像诊断系统安全架构与临床实践》
  • 杨辉三角解法
  • kotlin的val声明的变量是常量吗
  • vscode 都有哪些大模型编程插件
  • Raven: 2靶场渗透测试
  • 如何在Android中实现自定义视图
  • 软考-数据库开发工程师-3.1-数据结构-线性结构
  • 统计Excel列中某值出现的次数
  • 【消息队列】数据库的数据管理