我已经编写了一段代码来从rss页面检索新闻。这是代码:
this.loadRecentNews = function loadRecentNews() {
$.get("http://rss.nytimes.com/services/xml/rss/nyt/GlobalHome.xml", function (data) {
$(data).find("item").each(function () {
var el = $(this);
console.log("------------------------");
console.log("Title : " + el.find("title").text());
console.log("Link : " + el.find("link").text());
console.log("Description: " + el.find("description").text());
console.log("Date: " + el.find("pubDate").text());
});
});
};
这是输出:
Title : Example of title
Link : http://www.example.com
Description : Example of <<bb>>Description</b> containing <> tag..
Date : Example of date
我的问题是我只想提取Description值的文本来构建一个包含这个文本的新Json对象。
如何在不使用&lt;&gt;的情况下仅提取文本价值观?
答案 0 :(得分:0)
看到你正在使用jQuery,你可以使用它的.text()
方法。
var beforeText = "Example of <b>Description</b>" ;
var afterText = $("<p>").html(beforeText).text() ;
这使用jQuery创建一个新的HTML元素(永远不会添加到页面中)并更新其innerHTML,然后使用.text()
来获取文本。
另一个(风险较高)选项是使用空字符串替换<
和>
之间的任何内容的正则表达式:
var afterText = beforeText.replace(/<[^>]*>+/g, "")