leetcode 剑指offer05 替换空格

题目

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

示例

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

解析

循环遍历,判断为空格的时候,进行替换;
或者用正则匹配也行;

func replaceSpace(s string) string {
    b := []byte(s) // 为了能用切片来处理这个字符串
    res := make([]byte, 0)
    for i:=0; i<len(s); i++ {
        if b[i] == ' ' { //单引号表示golang中的rune(int32)类型,单引号里面是单个字符,不能用双引号,双引号是字符串,类型不匹配
            // res = append(res, []byte("%20")...)   //追加一个切片,和下面分别追加三个字符是一样的
            res = append(res, '%')
            res = append(res, '2')
            res = append(res, '0')
            // res = append(res, '%20') //但是这样是错的
        } else {
            res = append(res, b[i])
        }
    }
    return string(res)
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值