当前位置: 首页 > 知识库问答 >
问题:

XSLT转换以移除特殊字符等

彭宏阔
2023-03-14

我希望能够翻译和XML项目,以删除空格&任何特殊字符和转换大写字母到小写字符,我得到了一点卡住,至少说!

<xsl:template match="faq">
<article>
    <xsl:call-template name="questionMatch"/>
</article>
</xsl:template>
<xsl:template name="questionMatch" match="section">
    <xsl:for-each select="section">
        <xsl:for-each select="qa">
            <div class="toggler" id="{translate(translate(translate(question,'?!£$%^*',''), ' ', ''), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')}">
            </div>
        </xsl:for-each>
    </xsl:for-each>
</xsl:template> 

共有1个答案

皮煜
2023-03-14

啊哈,尤里卡!我似乎在其他一些话题的帮助下(最终)弄明白了。我想我会分享这个答案,因为它可能会在未来帮助其他人?

答案是:

<xsl:template name="questionMatch" match="section">
    <xsl:variable name="vAllowedSymbols" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'"/>
        <xsl:for-each select="qa">
            <div class="toggler" id="{translate(translate(question, translate(question, $vAllowedSymbols, ''), ''), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')}">
            </div>
    </xsl:for-each>
</xsl:template> 
 类似资料:
  • 我试图使用xslt将xml中的特殊字符转换为其编码形式。 例子: 等等下面给出了我使用的代码 XML结构是 输出也应该包含xml节点,这就是为什么我在文本区域中使用xsl:拷贝而不是xsl: value-of。因为xsl: value-of Select="name"将只输出这是一个文件 我正在使用XSLT版本1。o 我想要的输出是

  • 我正在使用Apache POI读取<代码>。docx文件,并在一些操作后写入。<代码>。我使用的docx文件是法语的,但当我在它将一些法语字符转换为特殊字符。示例转换为 下面的代码用于编写文件 默认使用UTF-8。 在调试时,我在写入<代码>之前进行了检查。csv数据保持原样。但它在写作时被转换了吗?我已将默认语言环境设置为语言环境。法语 我错过了什么吗?

  • 在 HTML 文件中,有两个字符需要特殊处理: < 和 & 。 < 符号用于起始标签,& 符号则用于标记 HTML 实体,如果你只是想要显示这些字符的原型,你必须要使用实体的形式,像是 &lt; 和 &amp;。 & 字符尤其让网络文档编写者受折磨,如果你要打「AT&T」 ,你必须要写成「AT&amp;T」。而网址中的 & 字符也要转换。比如你要链接到: http://images.google.

  • 正如我们所看到的,一个反斜杠 "\" 是用来表示匹配字符类的。所以它是一个特殊字符。 还存在其它的特殊字符,这些字符在正则表达式中有特殊的含义。它们可以被用来做更加强大的搜索。 这里是包含所有特殊字符的列表:[ \ ^ $ . | ? * + ( )。 现在并不需要尝试去记住它们 —— 当我们分别处理其中的每一个时,你自然而然就会记住它们。 转义 如果要把特殊字符作为常规字符来使用,只需要在它前面

  • 问题内容: 这将所有特殊字符替换为“”(空格)。 但是我尝试将破折号“-”排除为特殊字符。 这是我的尝试: 但这不是我期望的。 问 :如何进行这项工作? 问题答案: 如果要匹配除以外的所有字符,可以使用: 例如:

  • 我需要一个正则表达式来验证, 长度应该是18 前5个字符应该是(xyz34|xyz12) 其余13个字符只能是字母和数字,不允许有空格或特殊字符。 我有一个这样的模式, 但这允许空格和特殊字符,如($、%等),这违反了规则#3。 有没有建议排除这个空格和特殊字符,并严格检查它必须是字母和数字?