簡體   English   中英

如何在CLEAN中小寫字符串

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM