2012-04-13 8 views
1

を持って、私は作品次のセレクタ、持っている子ノードを見つける:私が欲しいものXSLT 1 - ノードは、大文字と小文字を区別しない値

parent::node()/myNS:expField[myNS:Nam='NAMETOFIND']/myNS:Val 

myNS:Nam値に大文字と小文字を区別しないマッチングを行うことですので、私は希望以下のいずれかから<Val>を選択することができ:

<expField> 
    <Nam>NAMETOFIND</Nam> 
    <Val>the value I want</Val> 
</expField> 
<expField> 
    <Nam>NameToFind</Nam> 
    <Val>the value I want</Val> 
</expField> 
<expField> 
    <Nam>nametofind</Nam> 
    <Val>the value I want</Val> 
</expField> 
<expField> 
    <Nam>nAmEtOFInD</Nam> 
    <Val>the value I want</Val> 
</expField> 

私はXSLT 1を使用していますので、私はlower-case()を使用することはできません。

答えて

1

translate()は仕事をしますが、それはうまくはありませんが動作します。あなたが処理したい言語を知っているならば、それはです。

+1

さて、 'translate()'を '[myNS:Nam = 'NAMETOFIND']'にどのように入れていいですか?ちょうど '[翻訳(myNS:Nam、 'abcdefghijklmnopqrstuvwxyz'、 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')= 'NAMETOFIND']'?私はそれを試みます。 –

+0

はい、それは考えです。 – biziclop

+0

うん、それは働いた!私はXSLTのどこかで 'translate()'を使っていますが、そのようなノードセレクタでは使用することは考えていませんでした。ありがとう! –

関連する問題