[英]Haskell manipulating elements of a list
因此,可以說我有一個特定的字符串,並且我想檢查字符串的元素,無論它們是數字還是字符。 每個數字都必須用數字1替換,每個字符都用數字2替換,最后,在對所有數字求和時必須顯示最終結果。 示例:函數“ 123abc”必須給出結果9
我已經想出了一種使用列表理解和模式匹配的解決方案,但是我需要能夠給出一個不使用它們的解決方案,這意味着僅elem,head,tail,reverse,map,sum等。所有這些都必須為1功能,現在幾個合為一體。
您可以執行以下操作;
import Data.Char (isDigit)
import Data.Bool (bool)
getsum :: String -> Int
getsum = sum . map (bool 2 1 . isDigit)
*Main> getsum "1234abc"
10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.