如何将XSL Or Operator与子串命令一起使用?

时间:2013-10-10 23:33:48

标签: xslt xpath

我有一个程序可以创建pdf到xml。我正在尝试根据文档中的一些半结构化信息创建内容节点。一些文档有SUBJECT行,有些文件有SUBJ:行。我想绕过创建两个独立的内容节点。这就是我现在所拥有的:

<content name="SUBJECT">
  <xsl:value-of
    select="substring-before(substring-after(//content[@name='snippet']/text(),'SUBJECT:'),'&lt;')"
  />

<content name="SUBJECT">
  <xsl:value-of
    select="substring-before(substring-after(//content[@name='snippet']/text(),'SUBJ:'),'&lt;')"
  />

我想为SUBJECT设置一个内容节点,它将select语句与OR运算符组合在一起。这可能吗?

1 个答案:

答案 0 :(得分:0)

只需将它们合并为一个模板:

<content name="SUBJECT">
  <xsl:value-of
    select="substring-before(substring-after(//content[@name='snippet']/text(),'SUBJECT:'),'&lt;')"
  <xsl:value-of
    select="substring-before(substring-after(//content[@name='snippet']/text(),'SUBJ:'),'&lt;')"
  />

除非您计划在同一节点中获取同时具有SUBJ和SUBJECT的节点,否则这对您来说没问题。