Haskell を学んでいて、問題が発生しました。タイプは次のとおりです。 sentences :: [String] -> [String]
文字列を文に変換したい
["something","","Asd dsa abc","hello world..",""]
次のようになります。["Something.","Asd dsa abc.","Hello world..."]
そして、マップのような高階関数を使いたいです。私はこれを作る方法を理解できません。
私は単一の文字列で作業することができました:
import Data.Char
sentences :: String -> String
sentences [] = []
sentences (a:as) = (( toUpper a):as) ++ "."
だから私はこれから得る:
sentences "sas das asd"
これ:"Sas das asd."
誰かがこの問題で私を助けてくれることを願っています。ご協力いただきありがとうございます!
編集:ご協力いただきありがとうございます。次のようになります。
import Data.Char
sentences :: [String] -> [String]
sentence (a:as) = ((toUpper a):as)++['.']
sentences = map sentence
でもフィルターの置き場所がわからない