我一直在使用JSoup来解析歌词,到目前为止它一直很棒,但是遇到了问题。
我可以Node.html()
用来返回所需节点的完整 HTML,它保留换行符,如下所示:
Glóandi augu, silfurnátt
<br />Blóð alvöru, starir á
<br />Óður hundur er í vígamóð, í maga... mér
<br />
<br />Kolniður gref, kvik sem dreg hér
<br />Kolniður svart, hvergi bjart né
但是,如您所见,它有一个不幸的副作用,即保留 HTML 实体和标签。
但是,如果我使用Node.text()
,我可以获得更好看的结果,没有标签和实体:
Glóandi augu, silfurnátt Blóð alvöru, starir á Óður hundur er í vígamóð, í maga... mér Kolniður gref, kvik sem dreg hér Kolniður svart,
这有另一个不幸的副作用是删除换行符并压缩成一行。
<br />
在调用之前简单地从节点替换会Node.text()
产生相同的结果,并且该方法似乎将文本压缩到方法本身的单行上,而忽略了换行符。
是否有可能两全其美,并正确替换标签和实体以保留换行符,或者是否有另一种解码实体和删除标签而无需手动替换它们的方法或方式?