我有一個像下面解析縮進列表爲布爾樹
foo
and foo2
and bar
or something
and somethingElse
or somethingElse2
or somethingElse3
and baz
or godknows
or godknows2
這一段文字應被解釋爲:
(
foo
&& foo2
&& (bar || (something && (somethingElse || somethingElse2 || somethingElse 3)))
&& (baz || godknows || godknows2)
)
在我逐行讀取線的那一刻。我知道我需要測量縮進並解析下一行的表達式,以便找出當前行所屬的表達式,但我很難找出如何有用地做到這一點,而不會消耗下一行。
這似乎是一種具有遞歸解決方案的問題,但它逃避了我。
輸入格式不固定,我只是希望能夠將相對可讀的表達式轉換爲布爾值樹,所以如果您可以用更合適的格式來回答這個問題,那麼請繼續閱讀:
非常感謝的快速反應:) – user1671701
按下在我之前的評論中輸入得太早,但額外的隱形令牌聽起來確實完美,我會給它一個去,謝謝! – user1671701