如何选择末尾没有点的段落并删除-使用jQuery/javascript
How to select paragraphs with no dot at the end and remove - with jQuery/javascript?
我有以下段落:
<p>This is a first paragraph.</p>
<p>This is a second</p>
<p>A third paragraph is here.</p>
<p>And a fourth</p>
第二段和第四段在句末没有句号。有没有办法选择这些段落,然后用jquery/javascript删除它们?
$('p').each(function() {
var par = $(this), text = par.text();
if (text.charAt(text.length-1) !== '.') {
par.remove();
}
});
当然,它在点和段落末尾之间不需要额外的空格(或其他字符):在这种情况下,正则表达式检查而不是charAt()
可能是更好的选择
尝试以下操作:
$('p').each(function(){
if(this.innerHTML[this.innerHTML.length - 1] != '.')
$(this).remove();
});
您的正则表达式如下:<p>.*?(?<!'.'s*)</p>
这做了一个否定的回溯,以断言段落没有以句点结尾。
我添加了一个's*
,以留出一段时间后的空间。
我会使用filter
而不是each
:
$("p").filter(function () {
var text = $(this).text();
return text.charAt(text.length - 1) != ".";
}).remove();
查看Fiddle。
$('p').each(function(){
$(this + ':not(:contains(.))').remove();
});
的工作示例
相关文章:
- 如何在jQuery中从段落中删除不需要的元素
- 删除没有文本的段落
- 使用正则表达式删除段落开头和结尾的换行符
- 从段落中删除某些文本字符串
- 如何选择末尾没有点的段落并删除-使用jQuery/javascript
- 添加和删除段落,简要显示文本
- 如何删除合理段落中文本之间不需要的空白
- 删除包装段落
- 如何防止段落中的行被删除(Javascript替换Regex)
- 删除带有父段落标记的元标记
- 合并两个段落并删除中间的一个元素
- 如何删除我之前从段落中选择的块格式?
- 从段落中删除特定的文本
- 如何从段落中删除换行符
- jQuery——在段落间使用next()添加和删除类
- 编辑器的图片标题不能删除,除非添加新的段落
- jQuery删除之前随机选择和显示的段落,并重新显示随机选择的段落
- JS -从段落中删除所有图像和格式
- 我怎样才能知道删除键所在的确切段落
- 查找仅包含 的段落并删除 p 标签