有关测试XML标签的适当嵌套一个问题:检测XML标签不正确的嵌套在Python
我的标签列表,从顶部从XML文件提取到底部:
- 关闭标签明确表示为正斜杠
- /to和/姓氏标签错误地嵌套。他们应该被切换。/lastname应位于/到父标签内。
tag_list = [ '音符', '到', '姓名', '/姓名', '姓氏', '/到', '/姓氏', '/注释']
什么将代码或方向发现/姓氏标签是在它的父母之外,是/对吗?
干杯。
有关测试XML标签的适当嵌套一个问题:检测XML标签不正确的嵌套在Python
我的标签列表,从顶部从XML文件提取到底部:
tag_list = [ '音符', '到', '姓名', '/姓名', '姓氏', '/到', '/姓氏', '/注释']
什么将代码或方向发现/姓氏标签是在它的父母之外,是/对吗?
干杯。
做一个空栈。
删除反斜杠,迭代reversed版本,并与原始版本进行比较。
例如,这会给你的差异的指标:
wo = [tag[1: ] if tag and tag[0] == '/' else tag for tag in taglist]
rev = list(reversed(wo))
discrepancies = [i for i in xrange(len(wo)) if wo[i] != rev[i]]
谢谢。它回答了与我发布的标签列表相关的问题。但它不能扩展到其他标签订单,例如标签没有对称放置的情况。你有没有解决这个问题?这里:<?xml version =“1.0”?>
优秀。它似乎适用于具有相同名称的多个标签。我之前使用过类似的算法,但没有使用斜杠。 – user1552294