標準の XSD の日付形式を出力に適した文字に変換します。
string ms:format-date(string datetime, string format [,locale])
パラメータ
- string datetime
XSD 形式の日付に関連する値を指定します。文字列以外の引数を指定すると、この関数は、string()
関数が適用されたときと同じように動作します。引数が日付でない場合は、出力が空の文字列になります。引数が有効な XSD 日付であり、一部のフィールドが空である場合、この関数は、指定されていないフィールドに値を入力しようとします。
- 文字列形式
Win32 APIGetDateFormat
関数に従って書式文字列を指定します。
- ロケール [オプション]
データの形式に対するロケールを定義します (たとえば、"EN_us")。
解説
ms:format-date()
の書式文字の一覧を示します。
文字 | 説明 |
---|---|
M |
1-12 形式の月 |
MM |
01-12 形式の月 |
MMM |
Jan-Dec の形式の月 |
MMMM |
January-December 形式の月 |
d |
1-31 形式の日付 |
dd |
01-31 形式の日付 |
ddd |
Sun-Sat 形式の曜日 |
dddd |
Sunday-Saturday 形式の曜日 |
y |
0-99 形式の年 |
yy |
00-99 形式の年 |
yyyy |
1900-9999 形式の年 |
gg |
期間/時代 (値がない場合は無視されます) |
この形式では、タイム ゾーンは指定できません。また、書式設定された文字列に任意のテキストを挿入したり、世紀を使用したり、May 2nd や April1st などのサフィックスを使用することはできません。
例
XML ドキュメント (Sample.xml)
<?xml version='1.0'?>
<XMLSamples xml:space="preserve"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<FileDetails>
<Author>Robert Brown</Author>
<Date dt:dt="datetime">2000-02-16T15:56:00</Date>
</FileDetails>
</XMLSamples>
XSLT スタイル シート (Sample.xsl)
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ms="urn:schemas-microsoft-com:xslt"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<xsl:template match="/">
<HTML>
<HEAD>
</HEAD>
<BODY>
<xsl:for-each select="XMLSamples/FileDetails/Date">
<DIV>
Date Unedited:
<xsl:value-of select="."/>
</DIV>
<DIV>
Date Edited:
<xsl:value-of select="ms:format-date(., 'MMM dd, yyyy')"/>
</DIV>
</xsl:for-each>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
出力
出力 HTML ページでは、次のエントリが表示されます。
Date Unedited: 2000-02-16T15:56:00
Date Edited: Feb 16, 2000