問題タブ [libxml2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xpath - xmllint の --pattern オプションをどのように使用しますか?
私は、libxml が XPath サポートをどのように実装しているかを確認しようとしているので、xmllint を使用してテストすることに意味がありました。ただし、明らかなオプションである --pattern はやや不明瞭であり、次のようなものを使用することになりました。
これは機能しているようで、それは素晴らしいことですが、私はまだ興味があります. xmllint の --pattern オプションは何のためにあり、どのように機能しますか?
満点の例を挙げてください。=)
c++ - libxml2 xmlChar* char* へのキャスト
libxml2 ライブラリから xmlChar* を char* にどのように変換/キャストしますか? ありがとう。
c++ - libxmlを使用したXMLの解析
XMLの解析に小さな問題があります。子ノードの名前を取得できません。
これが私のXMLコードです:
XMLファイルを解析する方法は次のとおりです。
コンソールに表示されるのは次のとおりです。
「cur->children->name」が「text」であり、「ParticleSystem」ではないのはなぜですか?
何が間違っているので、どうすれば修正できますか?
ありがとう。
xml - XML::LibXML の使用: 名前空間と子要素を作成し、それらを連携させるにはどうすればよいですか?
私は FOAF と Perl でいくつかのことをしようとしています。現在のソリューションに不満があり、独自のソリューションを展開したいと考えています。以外のモジュールを参照しないでくださいXML::LibXML
。
参考までに、FOAF ファイルのスニペットを以下に示します。
今、空白を除いて、これをXML::LibXML
. ただし、残念ながら最初の行で立ち往生しています。これは最初の行に焦点を当てています:
私はこれを
- element
RDF
、名前空間でrdf
宣言- 値を持つ
rdf
名前空間の属性xmlns
http://www.w3.org/1999/02/22-rdf-syntax-ns#
- 値を持つ
rdfs
名前空間の属性xmlns
http://www.w3.org/2000/01/rdf-schema#
- 値を持つ
foaf
名前空間の属性xmlns
http://xmlns.com/foaf/0.1/
- 値を持つ
admin
名前空間の属性xmlns
http://webns.net/mvcb/
- 値を持つ
最初に要素が必要ですがrdf:RDF
、これは難しいようです。私が見つけたのドキュメントを読んでいますが、これは私が望むことをしていないようです:XML::LibXML::Document
createElementNS()
今、私は試しcreateElement('rdf:RDF')
てみましたが、うまくいきます!ルート要素を取得しましたrdf:RDF
。これがルート要素を作成する方法ですか? XML の読み方が間違っているだけですか?
ここで、属性 (スキーマ宣言) を作成する必要があります。XML::LibXML::Document
文書化が不十分な を試しましたcreateAttributeNS
が、どちらも機能しませんでした:
実際、「属性に新しい名前空間を作成できません!」というエラーが表示されます。これは、メソッド名が意味するものと、ドキュメントの説明「名前空間にバインドされた属性を作成する」と矛盾しているようです。
それで、私はわかりました、私はできませんcreate
、attributeNS
多分私はそれからできset
ますattributeNS
。そして、今回は適用可能と思われる次の文書化された方法に進みますXML::LibXML::Element
: setAttributeNS
.
今回は別のエラーが表示されます: 「ns 属性が正しくありません!」. そこで、いくつかのテストを見直したところ、これには名前空間宣言以外の属性キー値が必要であることがわかりました..これは私が望んでいるものではありません.
考えられる組み合わせと出力は次のとおりです。
XML名前空間に関連していることはわかっていますが、*NSメソッドはどれも機能していないようです。最後に、非 NS バージョンを試します。
私はこれを正しく行っていないという恐ろしい気持ちになります。私はこれを正しく行いましたか?DOM を使用して (を使用せずに) 子要素を追加するにはどうすればよいappendTextChild
ですか?
この全体XML::LibXML
は非常に不十分に文書化されていますが、DOM を使用して高速に XML を作成するために Perl が提供する最高のもののようです。
xml - perlのXML::LibXMLを使用するxmlns属性ではなくXMLプレフィックスをどのように使用しますか?
この質問は、2006年に別のサイトで以前に試みられた可能性があると思います。しかし、私の現在のXML / RDFライター(XML::LibXML
1.70)は、要素の名前空間をxmlns属性の形式で出力します。これにより、名前空間を認識しないパーサーを使用していて、のlook_downを実行する人は除外されfoaf:Person
ます。最初に、これを達成するためのperlの簡単な方法を誰かが知っているかどうか疑問に思いXML::LibXML
ます。または別の方法で。
このようなノード:
この:
本当に次のようになります:
何か案は?どちらにしても技術的には正しいと思いますが、これを知っている他の人に頼りたくはありません。昨日は知らなかった。
iphone - iphoneで属性を持つタグの内容を解析するには?
私はiPhone開発に不慣れです.URLのHTMLファイルから特定のコンテンツを解析して取得したい.私はこのリンクからサンプルコードを持っていますhttp://blog.objectgraph.com/index.php/2010/02/ 24/parsing-html-iphone-development/
彼らはソースの h3 タグのコンテンツを取得しています。適切に表示されます。お問い合わせください。スタック オーバーフローとして URL を変更し、タイトルを検索しました。タイトルを適切に取得します。しかし、属性のコンテンツを取得できません。タグの
iphone - libxml2を使用してiPhoneのXPATHでダッシュを使用できません
KissXML for iphone を使用して HTML データを解析しようとしています。id() タグにダッシュを使用できないことに気付きました。そうしないと、評価されません。たとえば、要素を取得しようとしている場合は、次のようにします
id("フー")
ただし、 element を取得しようとすると、
id("フーバー")
libxml2 XPATH エンジンは何も返さないようです。ただし、Firefox の XPATH チェックを使用して動作します。誰もがこの問題に遭遇し、それが起こっている理由を知っているか、回避策を持っています (絶対 XPATH パスを使用する以外に?)
xpath - XPath で空のノードの text() に対して '' を返すにはどうすればよいですか?
<td></td><td>foo</td>
戻りたい['', 'foo']
のですが、libxml の xpath//td/text()
は['foo']
. ''
(一致しない) の代わりに空のタグを見つけるにはどうすればよいですか?