文字列による検索では、要素の値が、文字列で指定された値と完全に一致する文書や大小関係にある文書を検索します。文字列による大小比較を行うことができるため、日付の検索などの数字と文字とが混在した値の検索に利用できます。
文字列の定義を以下の図に示します。
図A.16 文字列の定義
文字列検索の以下について説明します。
要素の値と文字列が等しいかどうかを調べます。
/root/area == '神奈川県横浜市港北区'
/root/areaが示す要素の値が“神奈川県横浜市港北区”という文字列と等しい場合に真となります。
要素の値と文字列を文字コード値で文字列の左から右の順に大小比較します。
/root/namekana > 'さとう'
/root/namekanaが示す要素の値(文字コード値)と“さとう”の文字列の文字コード値を左から順に1文字ずつ比較し、/root/namekanaが示す要素ノードの文字コード値が大きい場合に真になります。
注意
文字列の完全一致、または大小比較ではパス式の最後に、パス演算子“//”は指定できません。
文字列の完全一致、または大小比較ではパス式の最後に、パス要素“*”は指定できません。
文字列の完全一致、または大小比較では項目式に、"$_"は指定できません。
文字列比較の場合は、XML文書中の検索対象とする要素の値と、キーワードで指定する文字列の桁数をそろえておく必要があります。
ポイント
日付や時間を大小比較する場合は、日時関数を使用してください。
日時関数の詳細については、“A.10 日時関数”を参照してください。