使用 curl 解析 xml 提要后,我的页面上有以下格式错误的 html:
<div class="rssfeed">
<link>
http://example.com/cp/?(string_of_numbers)
<a href="http://example.com/cp/?(same_string_of_numbers)">example</a>
</div>
where<link>
没有结束标记并且最后一串数字动态变化,我需要删除这些格式错误的元素,它是第一个完全保留 href 的文本节点,所以我希望能够搜索以 http:/ 开头的字符串/example.com/cp/? 那只是链接的直接孩子,我希望像这样实现这一点:
jQuery('<link>:regex(^[*])').remove();
使用james padolsey 的正则表达式或任何其他方法,尝试了以下但无济于事:
var reg = /\<link>.*\<a/;
jQuery(".rssfeed .rssfeed <link>").filter(function(){
return jQuery(this).text().match(reg);
}).html(function(i,h) {
var nr = h.match(reg);
jQuery(this).after(nr[0]);
return h.replace(reg,'');
});
和这个:
// Get the product number that lies between [ ] marks from all div elements
jQuery('.rssfeed .rssfeed:contains('<link>'+*+')').html(function() {
//Look for the wildcard string and save it to a variable. how can I search within the string?!
var $finalstring = jQuery(this).search('<link>'+*+');
//remove it from the string
jQuery(this).replace($finalstring, '');
});
但似乎没有任何效果。有人可以帮忙吗?更新: jsfiddle