正则表达式2搜索1个正则表达式

时间:2012-06-27 15:36:46

标签: regex actionscript-3 xml-parsing

我几乎可以使用这个XML来处理Actionscript 3.0:

<view id="view_lab" class="project.views.Lab" title="-<b><font color'#FF0000'>Lab</font></b>">
<view id="view_lab" class="project.views.Lab" title="-<b><font color'#FF0000'>Lab</font></b>">
<view id="view_lab" class="project.views.Lab" title="-<b><font color'#FF0000'>Lab</font></b>">

我有这个正则表达式以获取标题中的所有内容标题:title = /“[^”]“/

问题是我想只捕获“&lt;”和“&gt;”替换&amp; gt和&amp; lt而不使用2个正则表达式。由于该XML已经是一个字符串。

所以我一直在尝试这样的事情,这似乎不太合适:/ title =“(&lt;)*(&gt;)*([^”])+“/

1 个答案:

答案 0 :(得分:0)

因为您正在使用Actionscript 3,所以您不应该使用正则表达式来解析XML。这里有一些伪代码可以提取title属性的值:

var myXMLTree:XML = new XML( data );

for (var i:int = 0; i<myXMLTree.view.length(); i++){
    trace(myXMLTree.view[i].@title);
}

使用正则表达式解析XML / HTML中的属性是一个常见的陷阱,但应该不惜一切代价避免它。

请阅读:RegEx match open tags except XHTML self-contained tags