我正在嘗試編譯正則表達式並獲取可呈現給用戶的錯誤消息。我試圖與Text.Regex.TDFA和Text.Regex.Posix,似乎有同樣的表現:從編譯正則表達式中獲取錯誤說明
Prelude Text.Regex.TDFA Data.Maybe Data.Either.Utils> fromLeft $ (makeRegexM ".[" :: Either String Regex)
"*** Exception: parseRegex for Text.Regex.TDFA.String failed:".[" (line 1, column 3):
unexpected end of input
expecting "^", "]", "-" or Failed to parse bracketed string
Prelude Text.Regex.TDFA Data.Maybe Data.Either.Utils> isJust $ (makeRegexM ".[" :: Maybe Regex)
False
Prelude Text.Regex.TDFA Data.Maybe Data.Either.Utils> isJust $ (makeRegexM "." :: Maybe Regex)
True
的也許單子似乎工作;這兩者都沒有。然而文檔說,它應該使用'失敗' - 據我所知,它是在任一monad中定義的。難道我做錯了什麼?
什麼是正則表達式? – Toto 2011-12-14 14:24:29