Xpath関数lower-case
またはupper-case
を使用してxpathクエリを取得しようとしていますが、Seleniumでは機能しないようです(適用する前にxpathをテストします)。
機能しない例:
//*[.=upper-case('some text')]
大文字と小文字を使用しない限り、複雑なパスで必要なノードを見つけたり、集約関数を使用したりしても問題はありません。
誰かが以前にこれに遭遇したことがありますか?それは意味がありますか?
ありがとう。
upper-case()
およびlower-case()
はXPath 2.0関数です。プラットフォームがXPath 1.0のみをサポートしている可能性があります。
試してください:
translate('some text','abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')
これは、XPath 1.0で行う方法です。残念ながら、これにはテキストが使用するアルファベットの知識が必要です。平易な英語の場合、上記はおそらく機能しますが、アクセント付き文字が予想される場合は、それらをリストに追加してください。
Xsltの複数の場所で大文字が必要な場合は、小文字と大文字の変数を定義して、どこでも変換関数で使用できます。それはあなたのxsltをよりきれいにするはずです。