Regex 如何在关闭XML中的节点元素之前查找数字
我尝试在关闭元素之前查找字符串,例如(Regex 如何在关闭XML中的节点元素之前查找数字,regex,xslt,xslt-2.0,Regex,Xslt,Xslt 2.0,我尝试在关闭元素之前查找字符串,例如(277288),然后替换$1返回s/b277()不支持我的正则表达式 输入XML <root> <p>Magno v College Network, Inc. (2016) 1 CA5th 277, 288</p> <p>Magno v College Network, Inc. (5, 2017) 1 CA5th 15, 288 SA</p> </root> Magno v Co
277288
),然后替换$1
返回s/b277
<代码>()不支持我的正则表达式输入XML
<root>
<p>Magno v College Network, Inc. (2016) 1 CA5th 277, 288</p>
<p>Magno v College Network, Inc. (5, 2017) 1 CA5th 15, 288 SA</p>
</root>
Magno v College Network,Inc.(2016)1 CA5th 277288
Magno v College Network,Inc.(2017年5月5日)1 CA5 15 288 SA
XSLT
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="//text()">
<xsl:value-of select="replace(., '([0-9]+),\s[0-9]+(<)', '$1')"/>
</xsl:template>
预期产出
<root>
<p>Magno v College Network, Inc. (2016) 1 CA5th 277</p>
<p>Magno v College Network, Inc. (5, 2017) 1 CA5th 15, 288 SA</p>
</root>
Magno v College Network,Inc.(2016)1 CA5 277
Magno v College Network,Inc.(2017年5月5日)1 CA5 15 288 SA
什么类型的数字,只有没有任何前导符号的正整数?无论如何,如果与正则表达式匹配,那么元字符$
表示字符串末尾的匹配,可能在表达式中使用它,如'([0-9]+),\s[0-9]+$'
,就足够了。马丁先生,谢谢您的帮助!