2

私はXPathが初めてです。ページから 3 桁の数字をすべて取得するコードを書いています。それらは一定ではなく、105、515、および 320 の間で変化します。これらの数値を 2 つの別々の部分にトークン化できるようにする必要があります...

1 つの X-Path 式で 1 ​​桁目を取得し、2 番目の X-Path 式で 2 番目の 2 桁を取得できるようにしたいと考えています

調査を行ったところ、「ゼロ値」でトークン化できないことがわかりましたが、これを行う方法はありますか?

ありがとう

4

1 に答える 1

1

質問は、実際には3 桁の数値を 2 つの文字列に分割する方法に関するもので、最初の数字には最初の数字が含まれ、2 番目の数字には残りの 2 桁が含まれるようです。

考えられる解決策の 1 つを次に示します

次の XPath 式を評価すると、数値 $vNum の最初の桁を含む文字列が生成されます(実際の XPath 式では、$vNum をこの値を生成する XPath 式に置き換えます)。

  substring($vNum, 1, 1)

次の XPath 式を評価すると、3 桁の数値 $vNum の最後の 2 桁を含む文字列が生成されます(実際の XPath 式では、$vNum をこの値を生成する XPath 式に置き換えます)。

  substring($vNum, 2)

$vNumの桁数がわからない場合、次の XPath 式を評価すると、3 桁以上の数字$vNum (実際の XPath 式では、 $vNum を、この値を生成する XPath 式に置き換えます):

  substring($vNum, 2, 2)

最後に、正確な桁数がわからないが最後の 2 桁を取得したい場合、次の XPath 式を評価すると、2 桁以上の数字 $vNum の末尾にある 2 桁を含む文字列が生成されます。 (実際の XPath 式では、$vNum をこの値を生成する XPath 式に置き換えます):

 substring($vNum, string-length($vNum) - 1)
于 2009-02-13T04:03:26.280 に答える