Haskell - Großschreibung aller Buchstaben in einer Liste [String] mit toUpper

Habe ich eine Liste [String] die Aufgabe ist, entfernen Sie diese Elemente in der Liste, die Sie "q" oder "p" und dann profitieren alle Buchstaben in die Liste mit toUpper.

Was ich versucht habe ist doch wie folgt:

delAndUpper :: [String] -> [String]
delAndUpper myList = filter (\x -> not('p' `elem` x || 'q' `elem` x)) myList

Es entfernt die unerwünschten Elemente aus der Liste richtig, allerdings kann ich nicht gelten toUpper auf dieser Liste, da der Typ von toUpper ist Char.

Versuchte ich es mit Karte und es funktioniert nicht.

delAndUpper myList = map toUpper (filter (\x -> not('p' `elem` x || 'q' `elem` x)) myList)

Ich weiß, dass toUpper in dieser Codezeile wird eine Liste als Wert und deshalb kann es nicht funktionieren, aber die wissen, wie man eine Ebene in der Liste und anwenden map toUpper.

Könnten Sie mir bitte helfen.

Vielen Dank im Voraus!

Grüße

InformationsquelleAutor John | 2013-05-06
Schreibe einen Kommentar