gpt4 book ai didi

javascript - 在 HTML 中转义小于和大于

转载 作者:行者123 更新时间:2023-12-04 03:45:22 25 4
gpt4 key购买 nike

content = '5<x<div></div>'基本上我正在寻找一个正则表达式,可以将上面的字符串变成 5&lt;x<div></div>5x<div></div>仍将是 5x<div></div> .我只是想逃避未关闭的 html 标签
如果有这样的库,那么我会很乐意使用它,只要它满足我的主要目标 试图逃避未关闭的 html 标签

最佳答案

  • 用符号+唯一值重写每个打开标签字符“<”...在这种情况下是“,,#*&,,”
  • 在唯一值
  • 处拆分字符串
  • “replaceString()”函数检查传递的值是否真的是一个标签……字符串中是否同时存在“<”和“>”字符。如果不存在,则用“& lt;”重写该字符。
  • 对符号“>”重复整个过程

  • 这不是这项任务最漂亮的解决方案,但它有效。

    var str = '5<x<div>s>7</div>';

    for (var i = 0; i < 2; i++) {
    if (i === 0) {
    var str2 = str.replace(/</gi, ",,#*&,,<");
    var spl = str2.split(",,#*&,,");
    } else {
    var str2 = str.replace(/>/gi, ">,,#*&,,");
    var spl = str2.split(",,#*&,,");
    }
    replaceString(spl);
    }

    function replaceString(spl) {
    for (let i = 0; i < spl.length; i++) {
    if (spl[i].indexOf('<') > -1 && spl[i].indexOf('>') > -1) {
    //.......
    } else {
    if (spl[i].indexOf('<') > -1) {
    spl[i] = spl[i].replace(/</gi, "&lt;");
    }
    else if (spl[i].indexOf('>') > -1) {
    spl[i] = spl[i].replace(/>/gi, "&gt;");
    }
    }
    }
    str = spl.join('');
    }

    console.log(str);

    关于javascript - 在 HTML 中转义小于和大于,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65274136/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com