【问题标题】:regular expression search with xml使用 xml 进行正则表达式搜索
【发布时间】:2013-07-12 13:29:56
【问题描述】:

我正在解析一个 xml 提要,并且我有以下标签

<content:encoded>
<![CDATA[
<p><a href="http://www.highlandradio.com/wp-content/uploads/2013/07/An-Grianan-Hotel.jpg"><img class="aligncenter size-full wp-image-54286" alt="An Grianan Hotel" src="http://www.highlandradio.com/wp-content/uploads/2013/07/An-Grianan-Hotel.jpg" width="488" height="244" /></a></p> <p>Gardai are appealing for information about last an armed robbery at An Grianan Hotel in Burt in the earkly hours of this morning..</p> <p>Three men entered the premises at quarter to three, at least one was armed with a shotgun. They escaped with a sum of money.</p> <p>Local Superintendent Andy Archbold is leading the investigation, and has been outlining what happened&#8230;&#8230;&#8230;&#8230;..</p> <p><strong> </strong></p>
]]>
</content:encoded>

我需要能够从中获取图像。我想知道最好的方法是什么?我可以搜索正则表达式吗?另外关于 … 等有没有办法轻松转换这些? 所有帮助表示赞赏。 下面是我当前获取提要并循环访问它的代码,我的目标是将我的数据数组的 leftImage 元素设置为内容编码标签内的图像。

var url="http://www.highlandradio.com/feed/"; 
//rss feed url
var xhr = Titanium.Network.createHTTPClient();

xhr.onload = function() {
    // Data is returned from the blog, start parsing
    var doc = this.responseXML.documentElement;

    // begin looping through blog posts
    var items = doc.getElementsByTagName("item");
    console.log(items);
    for (var i=0;i<items.length;i++) {
        data.push({                
            title: "'"+items.item(i).getElementsByTagName("title").item(0).text+"'",
            leftImage:'NewsStory.png',
            dataToPass: "'"+items.item(i).getElementsByTagName("description").item(0).text+"'",    
            className: "TableRow", 
            hasChild: true, 
            jsTest: true,
            js:"external.js"
        });
}
};

.

【问题讨论】:

    标签: javascript xml regex escaping titanium


    【解决方案1】:

    正则表达式是模式搜索的最佳方式。像这样的正则表达式也许可以帮助你:

    <img\s.*?src=\"(.*?)\".*?/>
    

    此正则表达式提取 scr 属性值,在您的示例中: http://www.highlandradio.com/wp-content/uploads/2013/07/An-Grianan-Hotel.jpg

    【讨论】:

    • @boulatin 这给了我一个语法错误。你能看出一个小错误吗?
    • @user2363025,此正则表达式适用于 Expresso 工具,如果您在 java 或 C# 程序中使用,可能更改为 &lt;img\\s.*?src=\\\"(.*?)\\\".*?/&gt;
    猜你喜欢
    • 2019-02-18
    • 1970-01-01
    • 2016-07-19
    • 2014-10-21
    • 2015-09-22
    • 2020-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多