我试图在正斜杠之前添加一个字符串,这是一个场景:
当我有一个字符串时: str = "//html:div[@id='ins_storybody']/p[2]/span[1]/h2[3]/p[1]/p[4]"
我想要预期的输出: //html:div[@id='ins_storybody']/html:p[2]/html:span[1]/html:h2[3]/html:p[1]/html:p[4]
在这里你清楚地看到,我html:在正斜杠之前添加。
笔记
如果没有矩形括号,我不想添加html:. 这是另一个例子:
str = "//html:div[@id='ins_storybody']/p/span[1]/h2/p[1]/p"
预期输出:
str = "//html:div[@id='ins_storybody']/p/html:span[1]/h2/html:p[1]/p"
如您所见,html:如果没有[1] or [].
我尝试使用这个逻辑:
str = "//html:div[@id='ins_storybody']/p[2]/span[1]/h2[3]/p[1]/p[4]"
var htmlDOM = ['p', 'span', 'h1', 'h2', 'h3', 'h4']
for(var i=0; i<htmlDOM.length; i++) {
q = str.includes('[');
if (q) {
strSlice = str.indexOf(htmlDOM[i]);
newstr = str.slice(0,strSlice) + 'html:' + str.slice(strSlice);
} else {
newstr = str;
}
console.log(newstr)
}
但看起来,这是一次又一次的迭代循环,似乎工作不完美。
帮助将不胜感激!
海绵宝宝撒
相关分类