把一个短语转换成它的首字母缩写。
技术爱好者最爱他们的 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 的文档。
这部分完全是可选的。