簡體   English   中英

Javascript正則表達式抓取ap標簽的內容

[英]Javascript regex to grab the contents of a p tag

有人可以幫我寫一個正則表達式代碼來掌握此p的內容:

<p class="bc_shirt_name">101</p>

謝謝

當您的標記格式正確時,最好使用DOMParser

var parser = new DOMParser();
var doc = parser.parseFromString('<p class="bc_shirt_name">101</p>', "application/xml");
var contents = doc.documentElement.textContent;

這幾乎適用於所有XML,而不僅僅是XHTML。 我也可以在<tag>foo</tag>它。

這是一個演示: http : //jsfiddle.net/vEeXX/

您的瀏覽器應該能夠解析HTML,不是嗎?

var div = document.createElement("div");
div.innerHTML = '<p class="bc_shirt_name">101</p>';
var p = div.getElementsByTagName("p")[0];
var html = p.innerHTML; // content as html
var text = p.textContent || p.innerText; // content as plain text

有很多方法,但是這里有一種使用正則表達式的方法,如原始問題所問:

var html = "<stuff><p class=\"bc_shirt_name\">101</p></stuff>";

var matches = html.match(/<p\s+class="bc_shirt_name">[\S\s]*?<\/p>/gi);
    matches = matches[0].replace(/(<\/?[^>]+>)/gi, ''); // Strip HTML tags?

alert(matches);​

JSFiddle演示: http : //jsfiddle.net/tGTb7/

var str = "<p class="bc_shirt_name">101</p>";
var match, result = "", 
regex = /<p\s+class="bc_shirt_name">(.*?)<\/p>/ig;

while (match = regex.exec(str)) {
  result += match[1]; 
  }
 alert(result);

結果變量將包含必需的數據。 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM