6

リストのリスト内から特定の値のすべての出現を削除したいと思います。たとえば、次のように入力します。

'a' ["abc", "bc", "aa"] 

出力:

 ["bc", "bc", ""]

これまでのところ:

remove :: Eq a => a -> [[a ]] -> [[a ]]
remove y xs = filter(\x -> x/= y) xs

エラーが発生しました。よろしくお願いします。

4

1 に答える 1

10

外側のリストにマップする必要があります。

remove y xs = map (filter(\x -> x/= y)) xs

ここでは実際にはラムダは必要ありません。

remove y xs = map (filter(/=y)) xs
于 2012-04-07T01:42:48.880 に答える