Regex 使用XSLT从字符串中查找动态长度数字
我输入了如下所示的XMLRegex 使用XSLT从字符串中查找动态长度数字,regex,xslt,xslt-2.0,Regex,Xslt,Xslt 2.0,我输入了如下所示的XML <?xml version = "1.0" encoding = "UTF-8"?> <root> <param>:22:/ABC/GID:50749612002 BOOK USER REF: 12311111112222 XYZ: DEF BK ID:3333 3333 JKL:MNN - VZXVXHFHF DETA ABC:DEF ORDERID:989796123456789.GKLT C:0006789 FASD
<?xml version = "1.0" encoding = "UTF-8"?>
<root>
<param>:22:/ABC/GID:50749612002 BOOK USER REF: 12311111112222 XYZ: DEF BK ID:3333 3333 JKL:MNN - VZXVXHFHF DETA ABC:DEF ORDERID:989796123456789.GKLT C:0006789 FASDFSF.FYRTY 53546475</param>
</root>
:22:/ABC/GID:50749612002图书用户参考号:12311111112222 XYZ:DEF BK ID:3333 3333 JKL:MNN-VZXVXHFHF DETA ABC:DEF订单ID:989796123456789.GKLT C:0006789 FASDFSF.FYRTY 53546475
需要使用XSLT提取ORDERID的帮助 考虑将节点值提取到变量
$param
:
<xsl:variable name="param">
<xsl:value-of select="/root/param"/>
</xsl:variable>
regex
*?ORDERID:(\d+).\w{4}.
在中演示。考虑将节点值提取到变量$param
:
<xsl:variable name="param">
<xsl:value-of select="/root/param"/>
</xsl:variable>
regex
*?ORDERID:(\d+).\w{4}.
在演示。您尝试了什么?什么不起作用?你得到了什么?你期待什么?什么不适用于您的代码以及它在哪里?您已经将其标记为,因此使用XSLT/XPath 2.0中的函数(如tokenize
或matches
支持正则表达式或XSLT2中引入的xsl:analyze string
指令)来使用正则表达式应该不会太困难。所以,利用它们,告诉我们如果你不能让它工作,它是如何失败的。你尝试了什么?什么不起作用?你得到了什么?你期待什么?什么不适用于您的代码以及它在哪里?您已经将其标记为,因此使用XSLT/XPath 2.0中的函数(如tokenize
或matches
支持正则表达式或XSLT2中引入的xsl:analyze string
指令)来使用正则表达式应该不会太困难。所以,利用它们,告诉我们如果你不能让它工作,它是如何失败的。