正则表达式通过否定单词来查找多行匹配

时间:2016-02-18 08:25:47

标签: regex

我有以下代码

第1块

   </config>
    <pd:inputBindings>
        <xmlString>
            <xsl:value-of select="$JMS-Queue-Receiver/ns:ActivityOutput/Body"/>
        </xmlString>
    </pd:inputBindings>
</pd:activity>
<pd:activity name="Checkpoint">

第2块

    </config>
        <pd:inputBindings>
            <Telegence>
                <xsl:for-each select="$Start/group/CHANGE_MDN">
                    <CHANGE_MDN>
                    <EVENT_TYPE>

我正在使用正则表达式从BLOCK 2中选择

    <pd:inputBindings>
            <Telegence>

如果我们看到下面的第1块,我们有相同的项目集,

  <pd:inputBindings> 
        <xmlString>  

所以我想根据下一行选择块2,如果我们看到块1我们有<xsl:value-of,所以我们不应该从块1中选择。如果我们看到块2我们有<xsl:for-each所以需要选择。

所以我想通过否定<xsl:value-of来选择。 我尝试使用下面的正则表达式,但它选择了两个块。

<pd:inputBindings>[\r\n <]+[[:word:]]+>[\r\n <]+(?!xsl:value-of)

0 个答案:

没有答案