【问题标题】:Haskell String to List String split by whitespaceHaskell String to List String 按空格分割
【发布时间】:2019-07-22 07:49:19
【问题描述】:

我是 Haskell 的新手,我有一个问题,如何将给定的字符串拆分为单词列表。

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

感谢您的帮助

【问题讨论】:

  • words "Hello world from Haskell"

标签: haskell functional-programming


【解决方案1】:

您可以使用Hoogle 并通过签名进行搜索。由于您要将String 转换为Strings 的列表,因此签名为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"]

【讨论】:

    【解决方案2】:
    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

    【讨论】:

      猜你喜欢
      • 2019-11-27
      • 2021-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多