2
我一直想知道如何在Flex中將輸入錨(^
)的開頭轉換爲FSA。我知道線路結束符($
)與表達式r/\n
匹配,其中r
是匹配的表達式。輸入錨的開頭怎麼匹配?我看到的唯一解決方案是使用啓動條件。它如何在程序中實現?flex如何匹配線錨的開始?
我一直想知道如何在Flex中將輸入錨(^
)的開頭轉換爲FSA。我知道線路結束符($
)與表達式r/\n
匹配,其中r
是匹配的表達式。輸入錨的開頭怎麼匹配?我看到的唯一解決方案是使用啓動條件。它如何在程序中實現?flex如何匹配線錨的開始?
結束行標記$
的是從\n
不同之處在於它匹配EOF
爲好,即使結束線標記\n
或\r\n
不是在文件的末尾找到。
我沒有看flex的實現,但我會使用布爾標誌實現^
和$
。 ^
標誌將被初始設置,然後在第一個字符在一行之後重置爲false
,然後在下一個行尾標記之後重新設置爲true
,依此類推。
因此,您的實施方式與啓動條件類似嗎? –
@AaditMShah我不確定你的意思是「開始條件」。我編輯瞭解決錯別字和缺少空格的答案。 – dasblinkenlight