我正在寻找一个包含html字符实体的字符串,例如
等,并用文字字符串字符替换它们。我通过twitter的api获取数据,文本包含这些实体。有人知道现有的图书馆吗?
感谢您的帮助!
答案 0 :(得分:3)
关于hackage的Web.Encodings包看起来很有前途(decodeHtml函数):
http://hackage.haskell.org/packages/archive/web-encodings/0.3.0.2/doc/html/Web-Encodings.html
答案 1 :(得分:3)
我使用包tagsoup
中的函数构建了以下函数。它处理HTML5标准中的所有命名和数字实体(超过2000,see the list)。
import qualified Text.HTML.TagSoup as TS
decodeHTMLentities :: (StringLike str, Show str) => str -> str
decodeHTMLentities s = TS.fromTagText $ head $ TS.parseTags s
StringLike
包含String
,懒惰和严格ByteString
和Text
的实例。
未知的诱惑将保持不变。如果您想要关于未知实体的警告,请使用:
> parseTagsOptions parseOptions{optTagWarning=True} "&asdasd;"
[TagText "&asdasd;",TagWarning "Unknown entity: asdasd"]
答案 2 :(得分:-7)
你好试试下面的代码就可以了解
labelTR = labelTR.replace(/(?: |")/g,'');