我正在努力學習ragel的一個項目,我正在努力。我是新來的。Ragel字符串匹配
我有一個15個字符串的列表。問題是要檢查給定的字符串是否與這15個字符串中的任何一個匹配。
在正常情況下,使用15個字符串構建散列集足以執行O(1)查找字符串並判斷它是否匹配。
在我的情況下,我會做這十億次。所以我試圖用ragel爲這15個字符串構建一個狀態機,並檢查給定的字符串是否匹配。
我覺得使用雷格爾方法更好,因爲在這兩種情況下,我將不得不一一瀏覽字符。即爲了計算散列,我們需要掃描所有字符一次,然後查找。在使用狀態機掃描所有字符時,會給出結果並避免查找。
這是一個更好的方法嗎?任何一個我可以指出如何建立15個字符串的狀態機來做字符串匹配?