例如,对于这个 XML,
<h1 item="name">HIDE and SEEK</h1>
我希望输出是
HIDE SEEK
可能吗?
由于我们不知道您使用的是哪个版本,因此以下 XPath 表达式对 XPath 1.0 和 2.0 都有效
normalize-space(translate(//h1,'abcdefghijklmnopqrstuvwxyz',''))
在 XPath 2.0 中,该解决方案可能会稍微优雅一些。
请注意,这只会影响小写字母,但不会影响数字、标点符号或任何其他字符。几个空格被标准化为一个空格。
用于说明的 XSLT 1.0 样式表
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="normalize-space(translate(//h1,'abcdefghijklmnopqrstuvwxyz',''))"/>
</xsl:template>
</xsl:transform>
XML 输入
<h1 item="name">HIDE and SEEK</h1>
输出
HIDE SEEK