题目:请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
链接: 力扣Leetcode—剑指Offer—字符串—05. 替换空格.
示例 1:
输入:s = "We are happy."
输出:"We%20are%20happy."
思路:
- 一个方法是建立一个新的字符串,用 for range 遍历原字符串,使用 Switch 对 value 值进行选择,case 空格则加上%20,默认情况则是直接加上value,注意要转为 string 就解决了。
- 另一种方法就是直接调用现有的库。
法一Go代码:
package main
import "fmt"
func replaceSpace(s string) string {
var res string
for _, v := range s {
switch v {
case ' ':
//遇到空格则加上%20
res += "%20"
default:
//默认加上v值,但是要转为string
res += string(v)
}
}
return res
}
func main() {
a := "We are happy."
fmt.Println(replaceSpace(a))
}
提交截图:
法二Go代码:
package main
import "fmt"
func replaceSpace(s string) string{
return strings.Replace(s," ","%20",-1)
//直接调用Replace函数,讲一下四个参数,
//s就是要处理的字符串,
//第一个“ ”代表要替换的字符,
//“%20”就是替换为什么字符,
//-1代表全部替换
}
func main() {
a := "We are happy."
fmt.Println(replaceSpace(a))
}