我删除了<span>
内的<p>
。 有时 之前有一个空格,而<span>
之后有一个空格,这会在<span>
为$('span:contains("Name"),span:contains("name"),span:contains("[]"),span:contains("[ ]")').remove();
时产生额外的空间剥离出来。注意:我无法更改HTML。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="item">Hi <span class="name">User Name</span> , I see you need...</p>
var stream = fs.createReadStream('./tmp_dir/'+files.fileUploaded.name);
var errorCount = 0;
var csvStream = csv.parse({strictColumnHandling: true, headers: true})
.on("data", function(data){
console.log(data);
}).on("data-invalid", function(){
console.log("error");
errorCount += 1;
})
.on("end", function(){
console.log("done");
});
stream.pipe(csvStream);
所以我只想在删除范围时删除空格。
答案 0 :(得分:1)
删除<span></span>
后,为<p></p>
内容做另一个选择并使用this提示,string = string.replace(/ +/g, ' ');
答案 1 :(得分:0)
删除跨度前后的空格。放入跨度。
<p class="item">Hi<span class="name"> User Name </span>, I see you need...</p>
这会起作用吗?
答案 2 :(得分:0)
用空格替换空格,如下:
var str = "Test One";
str = str.replace(/ /g, '');
答案 3 :(得分:0)
您必须注意使用正则表达式/ .replace
方法解决此问题:您可以轻松更换您不想触摸的各种文字。
一种方法可能有点安全&#34;:
<span>
。nodeType == 3
)<span>
之前的文本节点,请在nodeValue
的末尾修剪空格。尽管如此,我还是不相信你处理HTML的方式和剥离内容将是非常具有前瞻性的......内容的微小变化会带来新的问题。
一个例子(写得清楚,不简洁):
var spanToRemove = document.querySelector(".nestedSpan");
var spanParent = spanToRemove.parentElement;
var childNodes = spanParent.childNodes;
var childNodesArray = [];
for (var i = 0; i < childNodes.length; i += 1) {
childNodesArray.push(childNodes[i]);
}
var spanIndex = childNodesArray.indexOf(spanToRemove);
var textBefore = childNodes[spanIndex - 1];
var textAfter = childNodes[spanIndex + 1];
if (textBefore && textBefore.nodeType == 3) {
// Trims both ends, would be better to just trim right end
textBefore.nodeValue = textBefore.nodeValue.trim();
}
if (textAfter && textAfter.nodeType == 3) {
// Trims both ends, would be better to just trim left end
textAfter.nodeValue = textAfter.nodeValue.trim();
}
spanParent.removeChild(spanToRemove);
&#13;
<p>Text before <span class="nestedSpan"> This gets removed </span> , Text after</p>
&#13;