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/b
277
<代码>()不支持我的正则表达式
输入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]+(&lt;)', '$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]+$'
,就足够了。

马丁先生,谢谢您的帮助!