0

以下に示すようなxmlファイルがあります。カテゴリが「SciFi」の場合、「isbn」番号が表示されるように、xmllint を使用して解析したいと考えています。

少し苦労した後、カテゴリのみまたはisbn番号のみを出力する方法を理解できました。しかし、条件を追加する方法がわかりません。

<book>
 <name>
  <category>SciFi</category>
  <isbn>12345678</isbn>
 </name>
 <name>
  <category>Mystery</category>
  <isbn>23456789</isbn>
 </name>
<book>

編集:私が持っているxmllintのバージョンはxpathをサポートしていませ

元の投稿を間違えました。上記のxmlを修正

xmllint --version が生成する

xmllint: libxml バージョン 20626 を使用

次のコマンドを使用して情報を出力します

猫/本/名前[1]/カテゴリ
猫/本/名前[2]/カテゴリ

猫/本/名前[1]/isbn
猫/本/名前[2]/isbn
4

1 に答える 1

0

これは、目的には不十分なツールのように思えます。xmllint がインストールされている場合、xsltproc はありますか? その方が便利だと思います。

また、念のため、試してみました cat /book/name[category='SciFi']/isbn か?

于 2013-03-11T22:52:51.467 に答える