![](/img/trans.png)
[英]regular expression to extract a link tag from an html string on server side
[英]Regular expression to extract text from a string in html format
我目前收到html格式的響應錯誤。 它是字符串類型。
"<!DOCTYPE html>\r\n
<html>
<head>
<title>Data already exists</title>
</head>
</html>"
我想檢索<title>
的內容,對於上面的例子“Data already exists”。 任何人都可以建議一個適當的正則表達式來捕獲該文本。
請任何幫助表示贊賞!
首先,你可以通過創建一個虛擬元素來注入HTML,而無需正則表達式:
var s = "your_html_string";
var dummy = document.createElement("div");
dummy.innerHTML = s;
var title = dummy.getElementsByTagName("title")[0].innerText;
但如果你真的堅持使用正則表達式:
var s = "your_html_string";
var title = s.match(/<title>([^<]+)<\/title>/)[1];
這是一個說明這兩種方法的DEMO 。
在正則表達式中解析html標簽的基礎知識就是這樣。 http://jsbin.com/oqivup/1/edit
var text = /<(title)>(.+)<\/\1>/.exec(html).pop();
但對於更復雜的東西,我會考慮使用適當的解析器。
您可以使用DOMParser()
解析它:
var parser=new DOMParser(),
doc=parser.parseFromString("<!DOCTYPE html><html><head><title>Data already exists</title></head></html>","text/html");
doc.title; /* "Data already exists" */
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.