我有这个巨大的莫德琴弦。这是其中的一小部分:
NamedElements
(
(
NamedElement
(
SpecTable
(
SpecColumns
(
(
SpecColumn
(
Name
(
"Id"
)
,
TypeVarChar
(
18
)
)
,
SpecColumn
(
name
(
"IsDeleted"
)
,
DataTypeBit
)
……
只有一件事叫做 NamedElements。这里面有很多 NamedElement 对象。格式很容易理解。我需要为此编写一个解析器,以便我可以做一些事情,比如获取所有具有等于某个名称的 SpecColumn 对象。不过,我不确定最好的方法。
我想过的一些事情:
循环遍历每个字符,直到找到一个'('。我创建了一个新对象。我将此对象作为属性添加到它上面的对象上。我继续前进,直到找到匹配的')'。然后,这将最终确定该对象中的内容。
基本上,我以前从来没有做过这样的事情,并且想知道是否有一些既定的方法可以做到这一点,或者我需要做我上面描述的事情吗?