ここで>>.定義されているシンプルな>.関数を使おうと夢中になっています。
HXTのノードのすべてのテキストの長さを取得したいと思います。私はこれを使用しています:
runX (doc //> hasName "div" //> text >>. unlines)
doc私のXmlTree矢はどこにありますか。
これにより、すべてのdivのすべてのテキスト(子を持つテキストを含む)が取得されます。を使用しているため、テキストを文字列として取得しますunlines。今、私はその文字列の長さを取得したいので、私は試してみます:
runX (doc //> hasName "div" //> text >>. unlines >. length)
そして、HXTは私の文字列を魔法のように配列に変換し直しているようです。
[0,17,0,20,0,11,...]
私が欲しいIntのは、それらすべてをまとめたものです。どうすればいいですか?
更新:
テキスト関数は次のように定義されます。
text = deep (getChildren >>> getText)
ビットをスキップするとgetChildren、これは正しく機能することがわかりました。
text = deep getText
div要素が1つしかない限り。複数のdiv要素がある場合は、各要素の長さの配列が返されます。