题目:请实现一个函数,把字符串 s 中的每个空格替换成"%20"。

链接: 力扣Leetcode—剑指Offer—字符串—05. 替换空格.

示例 1:

输出:s = "We are happy."
输入:"We%20are%20happy."

思路

  1. 一个办法是建设一个新的字符串,用 for range 遍历原字符串,应用 Switch 对 value 值进行抉择,case 空格则加上%20,默认状况则是间接加上value,留神要转为 string 就解决了。
  2. 另一种办法就是间接调用现有的库。

法一Go代码:

package mainimport "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 mainimport "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))}

提交截图