我有一些MS Word文档,已将整个内容转移到SQL表中。
这些内容包含许多方括号和花括号,例如:
[{a} as at [b],] {c,} {d,} etc
我需要进行检查,确保括号匹配平衡,例如下面的内容应该返回false:
- [{a} as at [b], {c,} {d,}
- ][{a} as at [b], {c,} {d,}
- [{a} as at [b],] {c,} }{d,
到目前为止,我已经提取了所有方括号并将它们的信息存储到 SQL 表中,如下所示: (段落编号、方括号类型、方括号位置、方括号级别)
3 [ 8 1
3 ] 18 0
3 [ 23 1
3 ] 35 0
7 [ 97 1
7 ] 109 0
7 [ 128 1
7 { 129 2
7 } 165 1
7 [ 173 2
7 ] 187 1
7 ] 189 0
7 { 192 1
7 } 214 0
7 { 216 1
7 } 255 0
7 { 257 1
7 } 285 0
7 { 291 1
7 } 326 0
7 { 489 1
7 } 654 0
我不确定算法如何检查每段落中的括号是否平衡,并在其不平衡时给出错误消息。
欢迎提供建议!
编辑:
代码还需要适用于以下情况:
(段落编号,括号类型,括号位置,括号级别)
15 [ 543 1
15 { 544 2
15 } 556 1
15 [ 560 2
15 ] 580 1
15 ] 581 0
15 [ 610 1
15 ] 624 0
15 [ 817 1
15 ] 829 0