2017-10-12 81 views
1

如何在Haskell中创建String列表,以便在以列表和单词作为参数的函数中使用它,并从String列表中的单词中查找相同的Char?我应该使用Data.Map还是Data.List来创建列表? 我试着像这样创造的:如何在Haskell中创建字符串列表?

dictionary :: [String] 
dictonary = fromList ["wit","ass","bad","shoe","cold","pie","and","or"] 
+9

删除'fromList'就完成了。括号已经形成一个列表,不需要做其他任何事情。 – chi

+2

那么如果你想要一个*列表*的字符串,我不明白你为什么需要'fromList'。你已经建立了一个列表。 –

回答

1

也许类似

import Data.List 
let checkIfContains :: [String] -> String -> Integer 
checkIfContains x y = elemIndex y x 

然后运行这个的一个例子是:

checkIfContains ["lol", "heh"] "heh" 

output: Just 1 

因此,如果你输入的列表Strings x and a String y看看是否y is in x,then the output is the index y in x(因为这里我们在x的索引1中发现“heh”)。如果ŸX输出应该是

Nothing 

一点需要注意,这个函数发现在x和y的第一次出现,所以如果你有在x和y的两个条目,那么它将显示第一次出现的索引。