按字符串长度排序字符串列表

时间:2017-10-31 08:03:57

标签: haskell

我正在尝试按字符串中第一个单词的长度对字符串列表进行排序(如果字符串有多个单词)并返回带有排序字符串的列表。这是我的代码但是给了我错误。请有人帮帮我吗?

listStrings :: [String] -> [(String, Int)]
listStrings  =  map (\ws -> (head ws , length ws)). group.sort.words

1 个答案:

答案 0 :(得分:1)

让它比较它上面第一个单词的长度

import Data.List

listStrings :: [String] -> [String]
listStrings = reverse . sortBy sortF 
    where
        sortF :: String -> String -> Ordering
        sortF = comparing (length . head . words)

这里有http://localhost:4321/