1

我有一个快速的目标。例如,我有这样的文字:

# Text I Want to Be Inserted Into An Element

这是我想要实现的:

<li>Text I want to Be inserted Into An Element</li>

执行此操作的任何 javascript 代码,例如:

var text =  "# Text I Want to Be Inserted Into An Element"

现在我有这个:

var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.open('GET', "ColeRubins.md", false);
xmlhttp.send();
var fcn = xmlhttp.responseText
document.write(fcn);
4

2 回答 2

0

尝试为此使用正则表达式。

var text =  "# Text I Want to Be Inserted Into An Element"
text = text.replace(/^#\s+(.*)$/gm, '<li>$1</li>')
console.log(text) // '<li>Text I Want to Be Inserted Into An Element</li>'

解释:

  • ^匹配行首
  • \s+匹配一个或多个空白字符
  • (.*)匹配任何字符 0-Infinity 次
  • $匹配行尾
  • 标志:
    • g全局,匹配所有匹配项
    • m多行,匹配多行,^是开始和$结束
于 2020-12-11T21:29:25.013 回答
0

免责声明:

由于您没有表示结束标签的字符,因此我假设您想将其添加到末尾。

脚步:

首先,您需要检查字符串是否在第一个索引处包含您的字符。然后才运行您的代码。

其次,您需要删除字符串的第一个字符。

(如果特殊字符存在于任何时候,不简单地删除它的原因是允许该特殊字符稍后在字符串中重新出现。)

第三,您需要添加第一个“<li>”标签。只需将您的字符串连接到“<li>”

三、追加结尾的“<\li>”

编码

const addLITagsToStringAndRemoveHashtag = (str, specialCharacter = "#") => {
    if(str.charAt(0) === specialCharacter) {
        return `<li>${str.substring(1, str.length)}</li>`;
    }
}
于 2020-12-11T21:30:29.687 回答