这让我疯了;-)我有一个带有各种span标签的字符串...我想删除所有span标签,除了带有classname XYZ的那些...问题是我还没有找到解决方案离开关闭标签......
我的出发点是这个正则表达式:
text = text.replace(/<\/?[^>]+(>|$)/g, "");
但是我试图说的所有内容“如果匹配classnameXYZ到目前为止还没有做到......”
有什么想法吗? 提前谢谢!
答案 0 :(得分:1)
好的,这适合我的需要; - )
$('#text > span').each(function(intIndex){
var word;
if ($(this).hasClass('checked')) {
word = "<span>"+$(this).html()+"</span>";
} else {
word = $(this).html();
word = word.replace(/<\/?[^>]+(>|$)/g, "");
}
console.log(word);
});
答案 1 :(得分:0)
这可以用正则表达式来完成,更多的是你的answer需要缓存整个html,这会很慢,试试下面的代码,这可能有帮助:)
$(function()
$('#text > span').each(function() {
if(!$(this).hasClass('XYZ')) {
$(this).remove();
}
});
});