2013-10-05 105 views
0

我有一個這樣的字符串:如何查找YouTube的所有href鏈接並將其刪除?

I like this video: <a href="http://www.youtube.com/watch?v=o03pXLuPl6A&hd=1">http://www.youtube.com/watch?v=o03pXLuPl6A&hd=1</a> 

我想刪除這兩個相關的YouTube視頻,使用jQuery的文字和鏈接,所以它看起來像這樣:

I like this video:

我怎樣才能做到這一點?請記住,需要刪除的字符串中可能存在多個鏈接。謝謝!

回答

7
$('a').each(function(){ 
    if(this.href.match(/youtube\.com/)) $(this).remove(); 
}); 
+0

非常不可能的情況,但是這對於http:// www.example.com/youtube會失敗。 – ComFreek

+0

@ComFreek那是真的 – Mina

+0

把'this'改成'$(this)' –

0

這將刪除錨元素包含字符串「youtube.com」或「youtu.be」作爲自己的HREF的一部分:

$('a').filter(function(){ return /youtube\.com|youtu\.be/.test(this.href); }).remove(); 

...除了它從刪除它們文檔,你說你有一個字符串文本,這樣你就可以在該計劃建立如下:

var bodyText = 'I like this video: <a href="http://www.youtube.com/watch?v=o03pXLuPl6A&hd=1">http://www.youtube.com/watch?v=o03pXLuPl6A&hd=1</a>'; 

var tmp = $("<div></div>").html(bodyText); 
tmp.find('a').filter(function(){ return /youtube\.com|youtu\.be/.test(this.href); }) 
      .remove(); 
bodyText = tmp.html(); 

也就是說,創建一個包含有你的字符串作爲其內容的新的div jQuery對象,然後應用過濾器並刪除錨點,然後將其餘內容分配回您的字符串變量。

相關問題