假设有xml文件:
<span id="assignee-val">
<span class="user-hover" id="issue_summary_assignee_m" rel="m">
<span class="aui-avatar aui-avatar-small"><div class="aui-avatar-inner"><img src="/secure/useravatar?size=small&avatarId=10222" /></div></span>
This Value!
</span>
</span>
问题是如何"This Value!"
摆脱这个xml。
这就是我所拥有的:(
> :m + Control.Applicative Data.ByteString.Lazy Text.HTML.DOM Text.XML.Cursor
> Prelude.map content . (element "span" >=> "id" `attributeIs` "assignee-val" >=> child >=> element "span" >=> "class" `attributeIs` "user-hover" >=> child) . fromDocument . parseLBS <$> Data.ByteString.Lazy.readFile "xmlfile"
[["\n "],[],["\n This Value!\n "]]
- 为什么有3个答案?什么查询
<span class="user-hover">
将更精确地定义标签内的内容? - 如何自动删除空格缩进和换行符?
UPD:换句话说,问题是如何删除所有嵌套标签(不管有多少)并仅获取第一级内容,即"This Value!"
(以及空格和换行符)。