在Python中,我有一系列带有未闭合标签的杂乱字符串。注意:这不需要是适当的XML,因为它适用于NLP解析器。例如,考虑以下字符串:
<hi><TIMEX>every monday, wednesday and friday</TIMEX> </TIMEX>but <TIMEX>not saturday
</TIMEX></bye><TIMEXUNTIL>until january</TIMEXUNTIL> from <TIMERANGE>11:30am-12:00
</TIMERANGE>
我们有一个额外的开放标签:
<hi>
额外结束标签:
</TIMEX>
</bye>
如何轻松删除任何不匹配的打开/关闭标签?我正在寻找的输出是:
<TIMEX>every monday, wednesday and friday</TIMEX> but <TIMEX>not saturday
</TIMEX><TIMEXUNTIL>until january</TIMEXUNTIL> from <TIMERANGE>11:30am-12:00
</TIMERANGE>
答案 0 :(得分:-2)
一种解决方案是迭代字符串,查找标签,包括已关闭和已打开的标签。
然后相应地放置逻辑。理想情况下,它可以通过堆栈数据结构来解决。可以使用以下逻辑编写代码。 -