2016-02-26 87 views
1
空白项

比方说,我声明一个变量在GHCI列表中删除

let a = ["hello","goodbye","","sup","bye","hi","cat","dog"] 

而且我想着手去除讨厌的“”从列表中。从我的理解,我应该能够使用dropWhile这样做,这样

dropWhile null a 

但这不会删除讨厌的“”。为什么是这样?我该如何解决这个问题?

啊,现在我明白了。我完全误解了dropWhile的工作原理。那么为了让这个问题有点不同 - 我如何删除列表中的空白条目?

回答

9

dropWhile当给出谓词时滴元素为Truenull "hello"False,所以,它应该放弃任何东西。

您可能正在寻找一个filter

Prelude> filter (not . null) ["hello","goodbye","","sup","bye","hi","cat","dog"] 
["hello","goodbye","sup","bye","hi","cat","dog"]