gpt4 book ai didi

string - 如何用 "%20"替换字符串中的空格字符?

转载 作者:行者123 更新时间:2023-12-02 08:31:25 24 4
gpt4 key购买 nike

我想写一个接受字符串的 Haskell 函数,并用特殊代码 %20 替换任何空格字符。例如:

sanitize "http://cs.edu/my homepage/I love spaces.html"
-- "http://cs.edu/my%20homepage/I%20love%20spaces.html"

我正在考虑使用 concat 函数,这样我就可以将一个列表列表连接成一个普通列表。

最佳答案

你要找的高阶函数是

concatMap :: (a -> [b]) -> [a] -> [b]

在您的情况下,选择 a ~ Char, b ~ Char(并观察到 ​​String 只是 [Char] 的类型同义词), 我们得到

concatMap :: (Char -> String) -> String -> String

所以一旦你写了一个函数

escape :: Char -> String
escape ' ' = "%20"
escape c = [c]

你可以通过编写来提升它来处理字符串

sanitize :: String -> String
sanitize = concatMap escape

关于string - 如何用 "%20"替换字符串中的空格字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26457811/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com