我对Haskell还是陌生的,但我仍然想尽办法。我正在尝试将两个功能(来自isMark
包的Data.Char模块的isAlpha
和base
组合在一起)作为Data.Text.filter函数的第一个参数。到目前为止,我尝试过的是:
import qualified Data.Char as C
import qualified Data.Text as T
import Data.Text (Text)
strippedInput :: Text -> Text
strippedInput input = T.filter (C.isMark || C.isAlpha) input
不起作用,或者
strippedInput input = T.filter (C.isMark . C.isAlpha) input
,但是显然它也不起作用,因为C.isAlpha
的类型为Char -> Bool
,然后它成为C.isMark
的输入,而Char -> Bool
的类型也是C.isMark
,因此键入不匹配。
我想在谓词中实现“ C.isAlpha
或dict = {item : values[index] for index,item in enumerate(keys)}
”逻辑,但是由于我的知识非常有限,我已经没有足够的想法来寻找解决方案了。 / p>