我有一个XML文档,我试图匹配完整标记,如果它包含sometextv2
之内。这里的样本数据集,我有工作:正则表达式匹配具有特定文本的标记
<mm_reportitem>
<mm_file>file.cfm</mm_file>
<mm_displaystr><![CDATA[ <cfinvoke component="/sometextv2" ]]></mm_displaystr>
</mm_reportitem>
<mm_reportitem>
<mm_file>file.cfm</mm_file>
<mm_displaystr><![CDATA[ <cfinvoke component = "/sometext" ]]></mm_displaystr>
</mm_reportitem>
<mm_reportitem>
<mm_file>file.cfm</mm_file>
<mm_displaystr><![CDATA[ <cfinvoke component="sometextv2" ]]></mm_displaystr>
</mm_reportitem>
我用,我从几个不同的来源放在一起以下工作:
<mm_reportitem[^>]*>([\s\S]*?).*sometextv2.*([\s\S]*?)<\/mm_reportitem>
这是相匹配的完整的标签,我想。但是,这似乎与sometext
和sometextv2
都匹配。
我错过了什么,只有sometextv2
获得匹配?
我能够修改这个以允许'mm_reportitem'节点中的属性,并使其完美工作。谢谢! – 2014-10-31 13:30:34