[英]How to lowercase a string in CLEAN
我在CLEAN中遇到問題,如何在字符串中將所有字母都小寫? 我可以通過一個char數組來完成它,但是我也需要使用字符串來完成它。 到目前為止,我的代碼如下:
module Something
import StdEnv, StdLib
arrayLower:: [Char] -> [Char]
arrayLower[x:xs] = (map toLower [x:xs])
stringLower:: String -> String
stringLower_ = ""
stringLowers = toString (arrayLower s)
Start:: String
Start = stringLower"SSSsss"
你的第一種情況
stringLower _ = ""
表示應用於所有內容的stringLower
為空字符串。
我很驚訝您沒有收到多余的第二種情況的警告。
String
是一個數組(未裝箱,因此為{#Char}
),您說您已經知道如何使用數組,但是您的arrayLower
是為Char
( [Char]
)列表而不是數組定義的。
使用數組理解,這對我有用:
stringLower :: String -> String
stringLower s = {toLower c \\ c <-: s}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.