String 哈斯凯尔正在分裂一条线

String 哈斯凯尔正在分裂一条线,string,haskell,substring,String,Haskell,Substring,我有这样一个字符串: "Some sentence1. Some sentence2, Some sentence3, Some sentence4....." 我想把它变成一个字符串列表 ["Some sentence1", "Some sentence2", "Some sentence3.".......] 到目前为止,这就是我所拥有的: foo :: String -> [String] foor [] = [] | x /= ',' = [[x]] ++ foo xs | o

我有这样一个字符串:

"Some sentence1. Some sentence2, Some sentence3, Some sentence4....."
我想把它变成一个字符串列表

["Some sentence1", "Some sentence2", "Some sentence3.".......]
到目前为止,这就是我所拥有的:

foo :: String -> [String]
foor [] = []
| x /= ',' = [[x]] ++ foo xs
| otherwise = [[x] ++ foo xs]
它不需要编译,更不用说工作了


救命啊

模式匹配中没有
x
。这在很大程度上是它既不编译也不工作的原因。但是,您的代码也不处理句点,因此即使在编译之后,它也无法正常工作,直到您修复它。

在模式匹配中没有
x
。这在很大程度上是它既不编译也不工作的原因。但是,您的代码也不处理句点,因此即使在编译之后,它也无法正常工作,直到您解决了这个问题。

您的函数没有定义x或xs。这就是它无法编译的原因

foo [] = []
foo(x:xs) = something 

将获得一个函数,该函数将遍历列表中的字符。虽然您可能想进一步了解标准库,但其中有一个函数使其变得很简单。(请注意,很抱歉含糊其辞,这看起来像是家庭作业,所以我尽量不透露。)

您的函数没有定义x或xs。这就是它无法编译的原因

foo [] = []
foo(x:xs) = something 

将获得一个函数,该函数将遍历列表中的字符。虽然您可能想进一步了解标准库,但其中有一个函数使其变得简单。(请注意,很抱歉含糊其辞,这似乎是家庭作业,所以我尽量不透露。)

这似乎是家庭作业,您的用户名似乎是一次性帐户。这是不是意味着
“一些句子1,…
?你在谷歌上搜索过
字符串拆分haskell
?因为我找到了这样的答案。这看起来像是家庭作业,你的用户名看起来像是一个一次性帐户。这是不是意味着
“一些句子1,…
?你在谷歌上搜索过
字符串拆分haskell
?因为我找到了这样的答案。哇,我被一个甚至不完全正确的答案否决了。:-)哇,我被一个甚至不完全正确的答案否决了。:-)