我是Flex和Bison的初學者,我有一個問題,因爲正則表達式的領域對我來說是新的。Flex/Bison匹配2種不同的圖案,它們之間沒有空格
我有字符串掃描像「LOL TATA 93.00」 但事情是,白色空格是2個字與字母之間的強制性,但可選字與字母/字與數字之間。 我可以有像 「LOL TATA93.00」 「LOL TATA 93.00」 但從來沒有「LOLTATA 93.00」的字符串。
我的問題是,當有空間時,我可以輕鬆掃描和分析。 (發現大聲笑然後塔塔然後93.00) 但是,當我有TATA93.00,它失敗了,它需要TATA93.00作爲1個單詞,但我希望它認識到第一個TATA作爲一個單詞,然後93.00作爲另一個。
我無法像[A-Z] + [0-9。] +那樣在Flex文件中添加規則,因爲如果必須提供所有可能性,它將永遠不會結束。
我的問題是:Bison能否將TATA93.00分別視爲由[A-Z] {4}和[0-9。] +定義的2個單詞?
傻了。我看着你的答案,並認爲「對我來說這是行不通的」。我開始編寫一個代碼在這裏公開,測試它並且工作。然後我看着我的原始代碼,然後我意識到我在我的flex文件中有一條規則破壞了其他文件。謝謝你讓我三思。 – blackmesa