注: FILTERXML 関数は、 Web 用 Excel および Excel for Mac では使用できません。 この関数は Excel for Mac の関数ギャラリーに表示される場合がありますが、Windows オペレーティング システムの機能に依存しているため、Mac では結果が返されません。
「XPathの要点を少し抽象的にまとめておく」より: 以上のような「概念的にどんなものか」が分かれば、あとは構文を調べながらなんとか使えるでしょ。 というわけで、構文を調べたりしたのでまとめておきます。 XPathの正式な構文は、まーまー整合的なんですが、書くのがとても面倒。それで省略形を使うことになります。省略形は書くのにとても便利ですが、意味がわかりにくくなります。そんなわけで、XPathを使うときは、正式な記法と省略形のあいだの翻訳に慣れておくとよいようです。 XPathの正式な構文 XPathロケーションステップの正式な構文は、軸、ノードテスト、述語(predicate)という3つの部分からなり、次の形です。 軸::ノードテスト[述語] 述語は条件式です。ノードテストも条件式ですが、頻繁に使う条件をノードテストにしたって感じですね。述語が不要なら、正式記法であってもブラケットごと省
javascript:function x(e){if(e.nodeType==9){return""}if(e.hasAttribute("id")){return'id("'+e.getAttribute("id")+'")'}var p=e.parentNode;var t=x(p)+"/"+e.tagName.toLowerCase();var c=p.childNodes;var g=0;var s;for(var i=0,n=c.length;i<n;++i){if(c[i].nodeName==e.nodeName && c[i].nodeType==e.nodeType){++g;if(c[i]==e){s=g}}}if(g==1){return t}t+="["+(s)+"]";return t}var f;function m(a){return function(e)
よく、以下のように XPath に文字列を埋め込む事があります document.evaluate('//*[@class="' + text + '"]', document, null, 7, null); まあ、僕もよくこんなコード書くんですけど。 でも、これって text が外部から来るものだったら、意図通りの動作をしないんですよね たとえば、以下のような例です。 var text = '"] | /hoge/fuga/piyo | .["'; document.evaluate('//*[@class="' + text + '"]', document, null, 7, null); というわけで 任意の文字列を XPath の式に変換する JavaScript を書いてみた 以下で試せます http://amachang.sakura.ne.jp/misc/xpath_es
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く