1
進出口新的學習Haskell並一直在使用這本書「函數編程第三版的哈斯克爾-的工藝」和我被困在第12章中關於正則表達式的問題12.16特別:哈斯克爾正則表達式
實現以下功能: 選項,加上:: RegExp-> RegExp - 其中選項e匹配0或1次出現的e,加上e匹配1次或多次出現的e。
林不知道哪裏evenbegin所以任何幫助將不勝感激!感謝
進出口新的學習Haskell並一直在使用這本書「函數編程第三版的哈斯克爾-的工藝」和我被困在第12章中關於正則表達式的問題12.16特別:哈斯克爾正則表達式
實現以下功能: 選項,加上:: RegExp-> RegExp - 其中選項e匹配0或1次出現的e,加上e匹配1次或多次出現的e。
林不知道哪裏evenbegin所以任何幫助將不勝感激!感謝
按照star
功能,plus
函數應該是這樣的:
plus :: RegExp -> RegExp
plus e = e <*> star e
凡a <*> b
裝置 「的後跟b」 和star
匹配0或多次出現。
嘗試使用epsilon
和(|||)
作爲option
函數。
檢查[此資源](https://github.com/c089/haskell-craft3e/blob/master/Chapter12.hs#L52) –
我不知道這將有助於特定練習,但[ '正則表達式應用程序'](https://hackage.haskell.org/package/regex-applicative)爲處理常規語言提供了一個特別令人愉快的API。 – dfeuer