【发布时间】:2021-09-16 16:44:45
【问题描述】:
我有一个以这种形式存储在变量中的字符串:
var c = "<p>Let's try with single inputs : *[]*</p>"
我可以使用这种方法轻松地将*[]*拆分并转换为<span>[a]:
var res = c.split("*[]*");
if(res.length > 1){
var strContent = res[0];
var inptSoal = ' <span id="content-input" class="al question mb-0">[ ]</span> ';
strContent += inptSoal;
strContent += res[1];
c = strContent;
} return c;
但是现在,假设我有这种形式的字符串 [b] :
var c = "<p>Let's try with 2 inputs : *[Input 1]* and *[Input 2]*</p>"
如何将每个 *[ 和 ]*(其中包含字符串)拆分(和转换)为 HTML <span> 元素?提前致谢
编辑
为了更清楚,使用我上面写的 方法 ([a]) 它将在我的网站中返回:
如果条件类似于我上面提到的第二种形式 ([b]),我想要做的是返回相同的结果。我怎样才能做到这一点?
已解决 ✅
这里的每个答案都解决了我的问题。这里的第一个答案是Ofek 的答案。它运作良好,我需要做的只是将replace() 函数内的"<span>" + input + "</span>" 更改为:
"<span id='content-input' class='al question mb-0'>" + input + "</span>" 使 span 元素具有我上面截图的 CSS 样式。
其他两个答案,sid 的答案和Rahul Kumar 的答案也很有效。但我更喜欢选择Rahul Kumar 的简单答案。
提前感谢所有回答我问题的人!
【问题讨论】:
-
您能否通过一些具有预期转换结果的输入示例来完成这个问题?尚不清楚
*[和]*之间的子字符串是否必须被<span>和</span>包围或只是替换。是否可以使用嵌套括号:*[str1*[str2]*str3]*? -
@AleksandrBaklanov 嗨,感谢您的评论,我已经更新了我的问题。你介意再看看吗?
标签: javascript html jquery split