gpt4 book ai didi

尝试匹配另一个元素的同级元素之后的 XSLT 错误

转载 作者:行者123 更新时间:2023-12-03 16:01:45 25 4
gpt4 key购买 nike

我在匹配另一个元素的下一个同级元素时遇到困难。

<w:p>
<w:r>
<w:rPr>
<w:color w:val="002D56"/>
<w:sz w:val="44"/>
<w:szCs w:val="44"/>
</w:rPr>
<w:t>I want to match this...</w:t>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:cstheme="minorHAnsi"/>
<w:sz w:val="28"/>
<w:szCs w:val="28"/>
</w:rPr>
<w:t>...but I don't want to match this.</w:t>
</w:r>
</w:p>

<xsl:template match="w:rPr[w:sz[@w:val='44']]"> ...

我正在找到前面的同级元素(上面示例中的第一个 w:rPr 元素),但如果我尝试

<xsl:template match="w:rPr[w:sz[@w:val='44']]/following-sibling::w:t"> ... 

我收到模式无法编译的错误(XSLTParseError: xsltCompilePattern:无法编译)。

我假设问题出在我的 XPath 上,但我不知道问题出在哪里。有建议吗?

最佳答案

尝试反转您的逻辑,并匹配 w:t,其前一个兄弟是与您的条件匹配的 w:rPr

<xsl:template match="w:t[preceding-sibling::w:rPr[w:sz/@w:val='44']]">

请注意,您也可以尝试此操作,但这将与后面或前面的 sibling 的 w:t 匹配

<xsl:template match="w:r[w:rPr/w:sz/@w:val='44']/w:t"> 

关于尝试匹配另一个元素的同级元素之后的 XSLT 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44294720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com