我有一个字符串,其中可能包含 br 或 span.../span 标签或其他 HTML 字符/实体。我想要一种可靠的方法来剥离所有这些并获取剩余的 UTF-8 字符。理想情况下,这应该是跨平台的。
像这样的东西是理想的:
http://snipplr.com/view/15261/python-decode-and-strip-html-entites-to-unicode/
但这也会删除标签。
最佳答案
您的要求到底有多严格?一个简单的两国 FSA 应该可以做到。从 READCHAR 状态开始。每当您在该状态下读取“<”时,都会转换到 READTAG 状态;否则,将字符写入结果字符串。每当您处于 READTAG 状态并读取“>”时,转换回 READCHAR 状态。
编辑:糟糕。错过了关于实体的部分。你也需要一个 READENTITY 状态。当你转出它时,你也可以将代码转换成相应的UTF-8字符。
关于C++:从字符串中删除所有 HTML 格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/979071/