Haskell 字符串按空格分割为字符串列表

5

我对Haskell很陌生,我有一个问题,如何将给定的字符串拆分成单词列表。

例如 "Hello world from haskell" -> ["Hello","world","from","haskell"]

谢谢你的帮助。


5
你好,我来自Haskell的世界。 - Willem Van Onsem
2个回答

18
您可以使用Hoogle搜索相关函数签名示例。由于您想要将一个String转换为String列表,因此函数签名应该是String -> [String]。首先匹配的是lines :: String -> [String]words :: String -> [String]。根据函数名称,words是正确的匹配。
正如words的文档所说:

words :: String -> [String]

words函数将字符串拆分为单词列表,这些单词由空格分隔。

>>> words "Lorem ipsum\ndolor"
["Lorem","ipsum","dolor"]
这似乎就是您要寻找的函数。如果我们在 ghci 中运行它,就会得到预期的输出:
Prelude> words "Hello world from haskell"
["Hello","world","from","haskell"]

7
words :: String -> [String]

words将字符串按空格分隔成单词列表。

>>> words "Lorem ipsum\ndolor"
["Lorem","ipsum","dolor"]

参考:https://hackage.haskell.org/package/base-4.12.0.0/docs/Data-String.html#v:words

本文介绍的是Haskell语言中用于分割字符串的函数。该函数名为 "words",可以将一个包含空格分隔的字符串拆分成单独的单词,并返回这些单词所组成的列表。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接