title | slug |
---|---|
lang |
Web/XPath/Functions/lang |
{{XsltSidebar}}{{ XsltRef() }}
lang
関数は、コンテキストノードの言語が渡された言語に一致するかどうかを判定し、論理値 true または false を返します。
lang(string )
string
- : マッチさせる言語コードまたはローカライゼーション (言語と国) コード。
コンテキストノードが与えられた言語に一致すれば true
。そうでなければ false
。
- ノードの言語はそのノードの
xml:lang
属性で決定されます。 現在のノードがxml:lang
属性を持たなければ、xml:lang
属性を持つ直近の祖先のxml:lang
属性の値が現在のノードの言語を決定します。言語を判定することができなければ (どの祖先もxml:lang
属性を持たなければ)、この関数は false を返します。
- 与えられた
string
に国コードが指定されていなければ、国コードにかかわらずその言語のどのノードにもマッチします。その逆は真ではありません。
このような XML の断片と、
<p xml:lang="en">I went up a floor.</p>
<p xml:lang="en-GB">I took the lift.</p>
<p xml:lang="en-US">I rode the elevator.</p>
このような XSL テンプレートの一部があったとすると、
<xsl:value-of select="count(//p[lang('en')])" />
<xsl:value-of select="count(//p[lang('en-GB')])" />
<xsl:value-of select="count(//p[lang('en-US')])" />
<xsl:value-of select="count(//p[lang('de')])" />
出力は次のようになるでしょう。
3
1
1
0
対応済み。