Как разделить / разделить строку в XSL? - PullRequest
0 голосов
/ 25 марта 2012

Это мой код, и единственное, что не работает, это то, что я получаю время, подобное этому:

2012-03-24T15:00:00+00:00

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>

  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Event</th>
      <th>Group</th>
      <th>Time</th>
    </tr>

    <xsl:for-each select="Diary/Event">      
        <xsl:if test="@Classification = ''Some classification">
            <tr>
              <td><a href="http://www.example.com/somepage.php" target="_blank"><xsl:value-of select="@EventName"/></a></td>
              <td><xsl:value-of select="@EventGroup"/></td>
              <td><xsl:value-of select="@Time"/></td>
            </tr>
        </xsl:if>
    </xsl:for-each>

  </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

Вы знаете, что мне нужно добавить, чтобы разделить строку времени? Можете ли вы показать пример, пожалуйста?

Спасибо!

1 Ответ

0 голосов
/ 25 марта 2012

Я использую шаблон, подобный следующему:

<xsl:template name="format_date">
        <xsl:param name="date" />
        <xsl:value-of select="concat( substring($date, 7, 2),'.',substring($date, 5, 2), '.', substring($date, 1, 4), ', ', substring($date, 9, 2),':',substring($date, 11, 2),'h' )" />
    </xsl:template>

для строки даты, отформатированной так: 20120324233001, чтобы преобразовать ее во что-то вроде 25.03.2012, 08:47h.Вы можете принять это для вашего конкретного формата строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...