删除连字符行

时间:2013-06-28 22:59:57

标签: javascript jquery

我正在尝试从客户端的博客网站中删除多余的虚线,因为它的不稳定长度与响应式设计有关。示例:---------------------------------

我创建了一个jquery插件来从一个帖子中删除单个行:

$('p:contains(——————————————————————————————-), 
p:contains(———————————————————————–),      
p:contains(————————————————————————————-), 
p:contains(———————————————————————————), 
p:contains(——————————————————————–), 
p:contains(————————————————————-), 
p:contains(————————————————————————————————), 
p:contains(—————————————————————————), 
p:contains(————————————————————), 
p:contains(———————————————————————————–), 
p:contains(——————————————————————————-)').each(function() {
$(this).remove();
});

但即使这种方法也是多余的。我尝试使用正则表达式重写:

$('p:contains(----)').each(function(text) {
    var hyphen = text.replace(/\u00AD/g,'');
    return hyphen;
});

它没有用,我已经坚持了一个小时。如果有人能给我一个正确的方向,我会非常感激。谢谢!

1 个答案:

答案 0 :(得分:2)

为jQuery .text()方法提供一个函数是直接替换元素文本的方法。该函数接收旧文本作为其第二个参数,并且它返回的任何内容都将用作替换。

$("p:contains(---)").text(function(i, text) {
    return text.replace(/-{3,}/g, '');
});