將一段詞組轉換成它的縮寫。
科技人最愛用他們的 TLA(三個字母的縮寫)!
寫個程式來產生一些行話吧:把像是 Portable Network Graphics 這樣的長名稱轉換成它的縮寫(PNG)。
標點符號的處理方式如下:連字號是詞語的分隔符號(就像空白一樣);其他所有標點符號都可以從輸入中移除。
例如:
| 輸入 | 輸出 |
|---|---|
| As Soon As Possible | ASAP |
| Liquid-crystal display | LCD |
| Thank George It's Friday! | TGIF |
這個練習會處理文字資料。基於歷史因素,Haskell 的String型別等同於[Char],也就是一個字元的陣列。為了更有效率地處理文字資料,可以使用Text型別。
作為這個練習的選用延伸,你可以
閱讀 Haskell 中關於字串型別的說明。
在 package.yaml 的相依套件清單中加入- text。
用以下方式匯入Data.Text:
import qualified Data.Text as T
import Data.Text (Text)
你現在可以寫出例如abbreviate :: Text -> Text,並以例如T.filter取用Data.Text的組合子。
查閱Data.Text的文件。
這個部分完全是選用的。