(define life一番上の階層のテキスト情報だけを抜きたい。
'(i (value "2007")
"年"
(ii (value "10")
"月"
(iii (en "9")
"日"))
(delimiter "/")
(value "2009")
"年"
(ii (value "1")
"月"
(iii (en "31")
"日"))
(iii (value "10")
"日")))
つまり、iiとiiiのタグの子孫を飛ばして読んでいきたい。結果として得たい文字列は、"2007年/2009年"。
SXPathを使う。
(use sxml.sxpath)
(define (text-self elem)
(sxml:string ((node-self (ntype?? '*any*)) elem)))
(text-self
(cons 'dummy
((sxml:child (sxml:invert (ntype-names?? '(ii iii)))) life)))
0 件のコメント:
コメントを投稿